• Govindarajulu Varadarajan's avatar
    enic: add low latency socket busy_poll support · 14747cd9
    Govindarajulu Varadarajan authored
    This patch adds support for low latency busy_poll.
    
    * Introduce drivers ndo_busy_poll function enic_busy_poll, which is called by
    socket waiting for data.
    
    * Introduce locking between napi_poll nad busy_poll
    
    * enic_busy_poll cleans up all the rx pkts possible. While in busy_poll, rq
    holds the state ENIC_POLL_STATE_POLL. While in napi_poll, rq holds the state
    ENIC_POLL_STATE_NAPI.
    
    * in napi_poll we return if we are in busy_poll. Incase of INTx & msix, we just
    service wq and return if busy_poll is going on.
    Signed-off-by: default avatarGovindarajulu Varadarajan <_govind@gmx.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    14747cd9
enic_main.c 63.7 KB