flow_dissector: dissect tunnel info outside __skb_flow_dissect()
authorSimon Horman <simon.horman@netronome.com>
Mon, 4 Dec 2017 10:31:48 +0000 (11:31 +0100)
committerDavid S. Miller <davem@davemloft.net>
Tue, 5 Dec 2017 17:09:18 +0000 (12:09 -0500)
commit62b32379fd124fea521484ba7e220d8a449f0b59
tree7c727ac15eb379872b1e0feff1646278db762d0c
parent96f84061620c6325a2ca9a9a05b410e6461d03c3
flow_dissector: dissect tunnel info outside __skb_flow_dissect()

Move dissection of tunnel info to outside of the main flow dissection
function, __skb_flow_dissect(). The sole user of this feature, the flower
classifier, is updated to call tunnel info dissection directly, using
skb_flow_dissect_tunnel_info().

This results in a slightly less complex implementation of
__skb_flow_dissect(), in particular removing logic from that call path
which is not used by the majority of users. The expense of this is borne by
the flower classifier which now has to make an extra call for tunnel info
dissection.

This patch should not result in any behavioural change.

Signed-off-by: Simon Horman <simon.horman@netronome.com>
Reviewed-by: Jakub Kicinski <jakub.kicinski@netronome.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/linux/skbuff.h
net/core/flow_dissector.c
net/sched/cls_flower.c