aboutsummaryrefslogtreecommitdiffstats
path: root/net
diff options
context:
space:
mode:
Diffstat (limited to 'net')
-rw-r--r--net/8021q/vlan_core.c11
-rw-r--r--net/core/dev.c17
2 files changed, 7 insertions, 21 deletions
diff --git a/net/8021q/vlan_core.c b/net/8021q/vlan_core.c
index 2d6e405fc498..6227248597c4 100644
--- a/net/8021q/vlan_core.c
+++ b/net/8021q/vlan_core.c
@@ -79,6 +79,9 @@ static int vlan_gro_common(struct napi_struct *napi, struct vlan_group *grp,
79{ 79{
80 struct sk_buff *p; 80 struct sk_buff *p;
81 81
82 if (netpoll_rx_on(skb))
83 return GRO_NORMAL;
84
82 if (skb_bond_should_drop(skb)) 85 if (skb_bond_should_drop(skb))
83 goto drop; 86 goto drop;
84 87
@@ -98,7 +101,7 @@ static int vlan_gro_common(struct napi_struct *napi, struct vlan_group *grp,
98 return dev_gro_receive(napi, skb); 101 return dev_gro_receive(napi, skb);
99 102
100drop: 103drop:
101 return 2; 104 return GRO_DROP;
102} 105}
103 106
104int vlan_gro_receive(struct napi_struct *napi, struct vlan_group *grp, 107int vlan_gro_receive(struct napi_struct *napi, struct vlan_group *grp,
@@ -106,9 +109,6 @@ int vlan_gro_receive(struct napi_struct *napi, struct vlan_group *grp,
106{ 109{
107 skb_gro_reset_offset(skb); 110 skb_gro_reset_offset(skb);
108 111
109 if (netpoll_receive_skb(skb))
110 return NET_RX_DROP;
111
112 return napi_skb_finish(vlan_gro_common(napi, grp, vlan_tci, skb), skb); 112 return napi_skb_finish(vlan_gro_common(napi, grp, vlan_tci, skb), skb);
113} 113}
114EXPORT_SYMBOL(vlan_gro_receive); 114EXPORT_SYMBOL(vlan_gro_receive);
@@ -121,9 +121,6 @@ int vlan_gro_frags(struct napi_struct *napi, struct vlan_group *grp,
121 if (!skb) 121 if (!skb)
122 return NET_RX_DROP; 122 return NET_RX_DROP;
123 123
124 if (netpoll_receive_skb(skb))
125 return NET_RX_DROP;
126
127 return napi_frags_finish(napi, skb, 124 return napi_frags_finish(napi, skb,
128 vlan_gro_common(napi, grp, vlan_tci, skb)); 125 vlan_gro_common(napi, grp, vlan_tci, skb));
129} 126}
diff --git a/net/core/dev.c b/net/core/dev.c
index 033d7ca28e6e..7bd3c29c5a78 100644
--- a/net/core/dev.c
+++ b/net/core/dev.c
@@ -135,14 +135,6 @@
135/* This should be increased if a protocol with a bigger head is added. */ 135/* This should be increased if a protocol with a bigger head is added. */
136#define GRO_MAX_HEAD (MAX_HEADER + 128) 136#define GRO_MAX_HEAD (MAX_HEADER + 128)
137 137
138enum {
139 GRO_MERGED,
140 GRO_MERGED_FREE,
141 GRO_HELD,
142 GRO_NORMAL,
143 GRO_DROP,
144};
145
146/* 138/*
147 * The list of packet types we will receive (as opposed to discard) 139 * The list of packet types we will receive (as opposed to discard)
148 * and the routines to invoke. 140 * and the routines to invoke.
@@ -2474,6 +2466,9 @@ static int __napi_gro_receive(struct napi_struct *napi, struct sk_buff *skb)
2474{ 2466{
2475 struct sk_buff *p; 2467 struct sk_buff *p;
2476 2468
2469 if (netpoll_rx_on(skb))
2470 return GRO_NORMAL;
2471
2477 for (p = napi->gro_list; p; p = p->next) { 2472 for (p = napi->gro_list; p; p = p->next) {
2478 NAPI_GRO_CB(p)->same_flow = !compare_ether_header( 2473 NAPI_GRO_CB(p)->same_flow = !compare_ether_header(
2479 skb_mac_header(p), skb_gro_mac_header(skb)); 2474 skb_mac_header(p), skb_gro_mac_header(skb));
@@ -2487,9 +2482,6 @@ int napi_skb_finish(int ret, struct sk_buff *skb)
2487{ 2482{
2488 int err = NET_RX_SUCCESS; 2483 int err = NET_RX_SUCCESS;
2489 2484
2490 if (netpoll_receive_skb(skb))
2491 return NET_RX_DROP;
2492
2493 switch (ret) { 2485 switch (ret) {
2494 case GRO_NORMAL: 2486 case GRO_NORMAL:
2495 return netif_receive_skb(skb); 2487 return netif_receive_skb(skb);
@@ -2587,9 +2579,6 @@ int napi_frags_finish(struct napi_struct *napi, struct sk_buff *skb, int ret)
2587{ 2579{
2588 int err = NET_RX_SUCCESS; 2580 int err = NET_RX_SUCCESS;
2589 2581
2590 if (netpoll_receive_skb(skb))
2591 return NET_RX_DROP;
2592
2593 switch (ret) { 2582 switch (ret) {
2594 case GRO_NORMAL: 2583 case GRO_NORMAL:
2595 case GRO_HELD: 2584 case GRO_HELD: