]> www.infradead.org Git - users/jedix/linux-maple.git/commit
xen-netback: fix guest Rx stall detection (after guest Rx refactor)
authorDavid Vrabel <david.vrabel@citrix.com>
Fri, 12 May 2017 08:46:35 +0000 (09:46 +0100)
committerJoao Martins <joao.m.martins@oracle.com>
Wed, 31 May 2017 21:51:55 +0000 (22:51 +0100)
commit41bc649ff27a686ea08dfad05720dda1206f1ac6
tree328662e172cf58e3c9edb6503cadfb39f0d129cb
parent729354711fcb6b8fce789d2f329e62122eb597fd
xen-netback: fix guest Rx stall detection (after guest Rx refactor)

If a VIF has been ready for rx_stall_timeout (60s by default) and an
Rx ring is drained of all requests an Rx stall will be incorrectly
detected.  When this occurs and the guest Rx queue is empty, the Rx
ring's event index will not be set and the frontend will not raise an
event when new requests are placed on the ring, permanently stalling
the VIF.

This is a regression introduced by eb1723a29b9a7 (xen-netback:
refactor guest rx).

Fix this by reinstating the setting of queue->last_rx_time when
placing a packet onto the guest Rx ring.

Signed-off-by: David Vrabel <david.vrabel@citrix.com>
Reviewed-by: Paul Durrant <paul.durrant@citrix.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
(cherry picked from commit d1ef006dc116bf6487426b0b50c1bf2bf51e6423)
Signed-off-by: Joao Martins <joao.m.martins@oracle.com>
Reviewed-by: Shannon Nelson <shannon.nelson@oracle.com>
Acked-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
drivers/net/xen-netback/rx.c