Eric Dumazet
501e7ef569
net-rfs: fix false sharing accessing sd->input_queue_head
...
sd->input_queue_head is incremented for each processed packet
in process_backlog(), and read from other cpus performing
Out Of Order avoidance in get_rps_cpu()
Moving this field in a separate cache line keeps it mostly
hot for the cpu in process_backlog(), as other cpus will
only read it.
In a stress test, process_backlog() was consuming 6.80 % of cpu cycles,
and the patch reduced the cost to 0.65 %
Signed-off-by: Eric Dumazet <edumazet@google.com >
Acked-by: Tom Herbert <tom@herbertland.com >
Signed-off-by: David S. Miller <davem@davemloft.net >
2016-04-27 21:55:45 -04:00
..
2016-04-04 10:41:08 -07:00
2016-04-21 15:02:40 -04:00
2016-04-27 15:43:10 -04:00
2016-04-24 00:12:08 -04:00
2016-03-24 19:57:15 -07:00
2016-04-25 15:59:16 -04:00
2016-04-04 10:41:08 -07:00
2016-03-29 11:52:11 +02:00
2016-04-04 10:41:08 -07:00
2016-04-04 10:41:08 -07:00
2016-04-04 10:41:08 -07:00
2016-04-19 20:26:11 -04:00
2016-03-25 11:37:57 -04:00
2016-04-04 10:41:08 -07:00
2016-04-05 14:19:08 +02:00
2016-03-25 19:10:03 +01:00
2016-03-26 16:14:37 -04:00
2016-04-26 15:47:32 -07:00
2016-04-18 14:45:08 -04:00
2016-04-04 10:41:08 -07:00
2016-03-25 08:48:31 -07:00
2016-04-07 16:44:14 -04:00
2016-04-07 17:22:20 -07:00
2016-04-12 10:25:30 -07:00
2016-03-25 16:37:42 -07:00
2016-04-01 17:03:37 -05:00
2016-04-06 13:18:19 +02:00
2016-04-13 10:41:08 +02:00
2016-03-25 16:37:42 -07:00
2016-04-05 13:25:12 +02:00
2016-04-26 11:47:41 -04:00
2016-03-25 16:37:42 -07:00
2016-04-11 21:15:48 -04:00
2016-04-04 10:41:08 -07:00
2016-04-14 19:31:34 -07:00
2016-03-28 13:57:51 -04:00
2016-04-21 14:14:58 -04:00
2016-04-27 21:55:45 -04:00
2016-04-04 10:41:08 -07:00
2016-04-04 10:41:08 -07:00
2016-04-25 15:09:11 -04:00
2016-03-25 16:37:42 -07:00
2016-04-04 10:41:08 -07:00
2016-04-15 13:00:11 -05:00
2016-04-07 21:04:26 -04:00
2016-04-18 14:45:08 -04:00
2016-04-14 09:01:47 -06:00
2016-04-14 21:14:03 -04:00
2016-04-23 18:51:33 -04:00
2016-04-05 10:56:32 +02:00
2016-03-29 11:52:11 +02:00
2016-04-15 17:29:35 -04:00
2016-04-14 12:56:09 -07:00
2016-04-25 16:54:14 -04:00
2016-03-25 16:37:42 -07:00
2016-03-25 16:37:42 -07:00
2016-03-25 16:37:42 -07:00
2016-03-25 16:37:42 -07:00
2016-04-02 20:23:09 -04:00
2016-04-04 10:41:08 -07:00
2016-04-20 20:31:14 -07:00
2016-04-21 13:48:20 -04:00
2016-04-26 15:47:32 -07:00
2016-04-07 16:53:29 -04:00
2016-04-13 12:02:28 -07:00