]> git.baikalelectronics.ru Git - kernel.git/commit
xen-netback: napi: don't prematurely request a tx event
authorPaul Durrant <Paul.Durrant@citrix.com>
Wed, 11 Dec 2013 10:57:16 +0000 (10:57 +0000)
committerDavid S. Miller <davem@davemloft.net>
Thu, 12 Dec 2013 18:35:38 +0000 (13:35 -0500)
commitccbdd3f7e411ce54fade426bbc527f7a0f316045
tree0ab7a3fba3e2c7f238a6f33d5eeaf9d360ddd37d
parentbc8ed2b22d19c7f4b1c103ae471c8cbade917773
xen-netback: napi: don't prematurely request a tx event

This patch changes the RING_FINAL_CHECK_FOR_REQUESTS in
xenvif_build_tx_gops to a check for RING_HAS_UNCONSUMED_REQUESTS as the
former call has the side effect of advancing the ring event pointer and
therefore inviting another interrupt from the frontend before the napi
poll has actually finished, thereby defeating the point of napi.

The event pointer is updated by RING_FINAL_CHECK_FOR_REQUESTS in
xenvif_poll, the napi poll function, if the work done is less than the
budget i.e. when actually transitioning back to interrupt mode.

Reported-by: Malcolm Crossley <malcolm.crossley@citrix.com>
Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
Cc: Wei Liu <wei.liu2@citrix.com>
Cc: Ian Campbell <ian.campbell@citrix.com>
Cc: David Vrabel <david.vrabel@citrix.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/xen-netback/netback.c