• Edward Cree's avatar
    sfc: ef100 representor RX top half · 9fe00c80
    Edward Cree authored
    
    
    Representor RX uses a NAPI context driven by a 'fake interrupt': when
     the parent PF receives a packet destined for the representor, it adds
     it to an SKB list (efv->rx_list), and schedules NAPI if the 'fake
     interrupt' is primed.  The NAPI poll then pulls packets off this list
     and feeds them to the stack with netif_receive_skb_list().
    This scheme allows us to decouple representor RX from the parent PF's
     RX fast-path.
    This patch implements the 'top half', which builds an SKB, copies data
     into it from the RX buffer (which can then be released), adds it to
     the queue and fires the 'fake interrupt' if necessary.
    Signed-off-by: default avatarEdward Cree <ecree.xilinx@gmail.com>
    Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
    9fe00c80
ef100_rep.h 1.92 KB