Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

net: prefech skb->priority in __dev_xmit_skb()

Most qdiscs need to read skb->priority at enqueue time().

In commit 100dfa74cad9 ("net: dev_queue_xmit() llist adoption")
I added a prefetch(next), lets add another one for the second
half of skb.

Note that skb->priority and skb->hash share a common cache line,
so this patch helps qdiscs needing both fields.

Signed-off-by: Eric Dumazet <edumazet@google.com>
Link: https://patch.msgid.link/20251121083256.674562-11-edumazet@google.com
Signed-off-by: Paolo Abeni <pabeni@redhat.com>

authored by

Eric Dumazet and committed by
Paolo Abeni
b2e9821c 2f9babc0

+1
+1
net/core/dev.c
··· 4246 4246 4247 4247 llist_for_each_entry_safe(skb, next, ll_list, ll_node) { 4248 4248 prefetch(next); 4249 + prefetch(&next->priority); 4249 4250 skb_mark_not_on_list(skb); 4250 4251 rc = dev_qdisc_enqueue(skb, q, &to_free, txq); 4251 4252 count++;