diff --git a/[refs] b/[refs] index 865aff63e83f..0aec77e8ea19 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: d78ad8cbfe73ad568de38814a75e9c92ad0a907c +refs/heads/master: f2bde7328633269ee935d9ed96535ade15cc348f diff --git a/trunk/net/core/dev.c b/trunk/net/core/dev.c index 52fea5b28ca6..91d792d17e09 100644 --- a/trunk/net/core/dev.c +++ b/trunk/net/core/dev.c @@ -2472,8 +2472,9 @@ static int __napi_gro_receive(struct napi_struct *napi, struct sk_buff *skb) return GRO_NORMAL; for (p = napi->gro_list; p; p = p->next) { - NAPI_GRO_CB(p)->same_flow = !compare_ether_header( - skb_mac_header(p), skb_gro_mac_header(skb)); + NAPI_GRO_CB(p)->same_flow = (p->dev == skb->dev) + && !compare_ether_header(skb_mac_header(p), + skb_gro_mac_header(skb)); NAPI_GRO_CB(p)->flush = 0; }