Files
linux/include/net
Paolo Abeni e9be0e993d net: sched: shrink struct Qdisc
The struct Qdisc has a lot of holes, especially after commit
a53851e2c3 ("net: sched: explicit locking in gso_cpu fallback"),
which as a side effect, moved the fields just after 'busylock'
on a new cacheline.

Since both 'padded' and 'refcnt' are not updated frequently, and
there is a hole before 'gso_skb', we can move such fields there,
saving a cacheline without any performance side effect.

Before this commit:

pahole -C Qdisc net/sche/sch_generic.o
	# ...
        /* size: 384, cachelines: 6, members: 25 */
        /* sum members: 236, holes: 3, sum holes: 92 */
        /* padding: 56 */

After this commit:
pahole -C Qdisc net/sche/sch_generic.o
	# ...
	/* size: 320, cachelines: 5, members: 25 */
	/* sum members: 236, holes: 2, sum holes: 28 */
	/* padding: 56 */

Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Acked-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2018-05-28 23:13:39 -04:00
..
2017-07-11 06:08:58 -04:00
2018-01-19 14:02:12 -05:00
2017-11-27 16:20:04 -05:00
2017-04-05 10:15:20 +02:00
2018-03-23 21:52:19 -04:00
2016-07-08 12:20:57 +02:00
2016-04-25 16:44:27 -04:00
2016-04-25 16:44:27 -04:00
2018-05-24 14:22:59 -07:00
2018-05-11 12:03:06 -04:00
2018-02-28 11:43:28 -05:00
2018-04-23 10:21:24 -04:00
2017-10-11 09:49:34 +02:00
2017-11-16 10:49:00 +09:00
2017-12-11 14:10:06 -05:00
2016-04-27 22:48:25 -04:00
2018-04-19 15:40:13 -04:00
2018-04-26 15:08:04 -04:00
2017-12-15 12:34:00 -05:00
2016-08-17 19:36:23 -04:00
2016-10-03 02:00:22 -04:00
2018-04-07 22:32:31 -04:00
2016-07-08 12:20:57 +02:00
2017-11-08 16:12:33 +09:00
2016-03-23 22:09:58 -04:00
2018-05-24 22:56:15 -04:00
2017-12-05 14:37:13 -05:00
2017-12-04 11:32:53 -05:00
2018-05-28 23:13:39 -04:00
2018-05-18 11:40:27 -04:00
2018-04-17 13:53:13 -04:00
2018-05-18 16:07:02 +02:00
2018-05-24 18:36:15 -07:00