mirror of
				https://github.com/torvalds/linux.git
				synced 2025-11-04 10:40:15 +02:00 
			
		
		
		
	net: Make skb->skb_iif always track skb->dev
Make it follow device decapsulation, from things such as VLAN and bonding. The stuff that actually cares about pre-demuxed device pointers, is handled by the "orig_dev" variable in __netif_receive_skb(). And the only consumer of that is the po->origdev feature of AF_PACKET sockets. Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
		
							parent
							
								
									92101b3b2e
								
							
						
					
					
						commit
						b68581778c
					
				
					 1 changed files with 1 additions and 2 deletions
				
			
		| 
						 | 
				
			
			@ -3173,8 +3173,6 @@ static int __netif_receive_skb(struct sk_buff *skb)
 | 
			
		|||
	if (netpoll_receive_skb(skb))
 | 
			
		||||
		return NET_RX_DROP;
 | 
			
		||||
 | 
			
		||||
	if (!skb->skb_iif)
 | 
			
		||||
		skb->skb_iif = skb->dev->ifindex;
 | 
			
		||||
	orig_dev = skb->dev;
 | 
			
		||||
 | 
			
		||||
	skb_reset_network_header(skb);
 | 
			
		||||
| 
						 | 
				
			
			@ -3186,6 +3184,7 @@ static int __netif_receive_skb(struct sk_buff *skb)
 | 
			
		|||
	rcu_read_lock();
 | 
			
		||||
 | 
			
		||||
another_round:
 | 
			
		||||
	skb->skb_iif = skb->dev->ifindex;
 | 
			
		||||
 | 
			
		||||
	__this_cpu_inc(softnet_data.processed);
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in a new issue