route: move lwtunnel state to a single place
authorJiri Benc <jbenc@redhat.com>
Fri, 22 Apr 2016 10:40:02 +0000 (12:40 +0200)
committerDavid S. Miller <davem@davemloft.net>
Mon, 25 Apr 2016 20:20:09 +0000 (16:20 -0400)
commit0868e2538e45a9ed68e2b14adc42b020a36aae1d
tree3e70f4b4a21790c38acc1af27e210c66f4a449a0
parent6a025a50b523478b7c8112643cc94f5fd3d312ce
route: move lwtunnel state to a single place

Commit 751a587ac9f9 ("route: fix breakage after moving lwtunnel state")
moved lwtstate to the end of dst_entry for 32bit archs. This makes it share
the cacheline with __refcnt which had an unkown effect on performance. For
this reason, the pointer was kept in place for 64bit archs.

However, later performance measurements showed this is of no concern. It
turns out that every performance sensitive path that accesses lwtstate
accesses also struct rtable or struct rt6_info which share the same cache
line.

Thus, to get rid of a few #ifdefs, move the field to the end of the struct
also for 64bit.

Signed-off-by: Jiri Benc <jbenc@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/dst.h