summaryrefslogtreecommitdiffstats
path: root/net/ethernet
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2015-06-01 14:56:09 -0700
committerDavid S. Miller <davem@davemloft.net>2015-06-01 14:56:09 -0700
commitbdef7de4b8d9be4cf7bf5aea977f827310ab3ff0 (patch)
tree8fbf2ce8fd40dce5e41cfd243126221a360be352 /net/ethernet
parent493be55ac3d81f9c32832237288eb397a9993d5d (diff)
downloadlinux-bdef7de4b8d9be4cf7bf5aea977f827310ab3ff0.tar.gz
linux-bdef7de4b8d9be4cf7bf5aea977f827310ab3ff0.tar.bz2
linux-bdef7de4b8d9be4cf7bf5aea977f827310ab3ff0.zip
net: Add priority to packet_offload objects.
When we scan a packet for GRO processing, we want to see the most common packet types in the front of the offload_base list. So add a priority field so we can handle this properly. IPv4/IPv6 get the highest priority with the implicit zero priority field. Next comes ethernet with a priority of 10, and then we have the MPLS types with a priority of 15. Suggested-by: Eric Dumazet <eric.dumazet@gmail.com> Suggested-by: Toshiaki Makita <makita.toshiaki@lab.ntt.co.jp> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ethernet')
-rw-r--r--net/ethernet/eth.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/net/ethernet/eth.c b/net/ethernet/eth.c
index c3325bd2f3fb..7d0e239a6755 100644
--- a/net/ethernet/eth.c
+++ b/net/ethernet/eth.c
@@ -470,6 +470,7 @@ EXPORT_SYMBOL(eth_gro_complete);
static struct packet_offload eth_packet_offload __read_mostly = {
.type = cpu_to_be16(ETH_P_TEB),
+ .priority = 10,
.callbacks = {
.gro_receive = eth_gro_receive,
.gro_complete = eth_gro_complete,