• John Fastabend's avatar
    net: sched: explicit locking in gso_cpu fallback · a53851e2
    John Fastabend authored
    This work is preparing the qdisc layer to support egress lockless
    qdiscs. If we are running the egress qdisc lockless in the case we
    overrun the netdev, for whatever reason, the netdev returns a busy
    error code and the skb is parked on the gso_skb pointer. With many
    cores all hitting this case at once its possible to have multiple
    sk_buffs here so we turn gso_skb into a queue.
    
    This should be the edge case and if we see this frequently then
    the netdev/qdisc layer needs to back off.
    Signed-off-by: default avatarJohn Fastabend <john.fastabend@gmail.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    a53851e2
sch_generic.c 27.3 KB