]> www.infradead.org Git - users/jedix/linux-maple.git/commit
xen-netback: require fewer guest Rx slots when not using GSO
authorDavid Vrabel <david.vrabel@citrix.com>
Tue, 8 Sep 2015 13:25:14 +0000 (14:25 +0100)
committerSantosh Shilimkar <santosh.shilimkar@oracle.com>
Tue, 6 Oct 2015 16:13:57 +0000 (09:13 -0700)
commit9a76951c806bb83baa1ae30049c3d0a9ce2b350b
treee5cda9f84e2363f786ab047bf2ec8b57d650f0cf
parente9564bed335219854273a6111ceac25d0c6190b5
xen-netback: require fewer guest Rx slots when not using GSO

Commit f48da8b14d04ca87ffcffe68829afd45f926ec6a (xen-netback: fix
unlimited guest Rx internal queue and carrier flapping) introduced a
regression.

The PV frontend in IPXE only places 4 requests on the guest Rx ring.
Since netback required at least (MAX_SKB_FRAGS + 1) slots, IPXE could
not receive any packets.

a) If GSO is not enabled on the VIF, fewer guest Rx slots are required
   for the largest possible packet.  Calculate the required slots
   based on the maximum GSO size or the MTU.

   This calculation of the number of required slots relies on
   1650d5455bd2 (xen-netback: always fully coalesce guest Rx packets)
   which present in 4.0-rc1 and later.

b) Reduce the Rx stall detection to checking for at least one
   available Rx request.  This is fine since we're predominately
   concerned with detecting interfaces which are down and thus have
   zero available Rx requests.

Acked-by: Konrad Rzeszutek Wilk <Konrad.wilk@oracle>
Signed-off-by: David Vrabel <david.vrabel@citrix.com>
Reviewed-by: Wei Liu <wei.liu2@citrix.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
(cherry picked from commit 1d5d48523900a4b0f25d6b52f1a93c84bd671186)
Signed-off-by: Annie Li <annie.li@oracle.com>
drivers/net/xen-netback/common.h
drivers/net/xen-netback/netback.c