• Paul Durrant's avatar
    xen-netback: napi: don't prematurely request a tx event · d9601a36
    Paul Durrant authored
    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: default avatarMalcolm Crossley <malcolm.crossley@citrix.com>
    Signed-off-by: default avatarPaul 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: default avatarDavid S. Miller <davem@davemloft.net>
    d9601a36
netback.c 46.5 KB