Re: [PATCH net-next V1] net: adjust net_device layout for cacheline usage
From: patchwork-bot+netdevbpf@kernel.org
Date: 2021-01-29 04:51:18
Also in:
netdev
From: patchwork-bot+netdevbpf@kernel.org
Date: 2021-01-29 04:51:18
Also in:
netdev
Hello: This patch was applied to netdev/net-next.git (refs/heads/master): On Tue, 26 Jan 2021 18:39:39 +0100 you wrote:
The current layout of net_device is not optimal for cacheline usage. The member adj_list.lower linked list is split between cacheline 2 and 3. The ifindex is placed together with stats (struct net_device_stats), although most modern drivers don't update this stats member. The members netdev_ops, mtu and hard_header_len are placed on three different cachelines. These members are accessed for XDP redirect into devmap, which were noticeably with perf tool. When not using the map redirect variant (like TC-BPF does), then ifindex is also used, which is placed on a separate fourth cacheline. These members are also accessed during forwarding with regular network stack. The members priv_flags and flags are on fast-path for network stack transmit path in __dev_queue_xmit (currently located together with mtu cacheline). [...]
Here is the summary with links:
- [net-next,V1] net: adjust net_device layout for cacheline usage
https://git.kernel.org/netdev/net-next/c/28af22c6c8df
You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html