summaryrefslogtreecommitdiffstats
path: root/net/socket.c
diff options
context:
space:
mode:
authorEric Dumazet2005-09-28 00:23:16 +0200
committerDavid S. Miller2005-09-28 00:23:16 +0200
commit9356b8fc07dc126cd91d2b12f314d760ab48996e (patch)
tree908b193442d0e2ad345c05547d227809bc162a0a /net/socket.c
parent[NET]: Prefetch dev->qdisc_lock in dev_queue_xmit() (diff)
downloadkernel-qcow2-linux-9356b8fc07dc126cd91d2b12f314d760ab48996e.tar.gz
kernel-qcow2-linux-9356b8fc07dc126cd91d2b12f314d760ab48996e.tar.xz
kernel-qcow2-linux-9356b8fc07dc126cd91d2b12f314d760ab48996e.zip
[NET]: Reorder some hot fields of struct net_device
Place them on separate cache lines in SMP to lower memory bouncing between multiple CPU accessing the device. - One part is mostly used on receive path (including eth_type_trans()) (poll_list, poll, quota, weight, last_rx, dev_addr, broadcast) - One part is mostly used on queue transmit path (qdisc) (queue_lock, qdisc, qdisc_sleeping, qdisc_list, tx_queue_len) - One part is mostly used on xmit path (device) (xmit_lock, xmit_lock_owner, priv, hard_start_xmit, trans_start) 'features' is placed outside of these hot points, in a location that may be shared by all cpus (because mostly read) name_hlist is moved close to name[IFNAMSIZ] to speedup __dev_get_by_name() Signed-off-by: Eric Dumazet <dada1@cosmosbay.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/socket.c')
0 files changed, 0 insertions, 0 deletions