packet: free packet_rollover after synchronize_net
authorWillem de Bruijn <willemb@google.com>
Tue, 16 Jun 2015 16:51:37 +0000 (12:51 -0400)
committerDavid S. Miller <davem@davemloft.net>
Sun, 21 Jun 2015 16:30:42 +0000 (09:30 -0700)
commit59f211181b5b10d4a95e1b9226febb0c0b6497c6
tree2f9ee4c3d1c9687d50b179fe63650ce55ac8daf4
parent120119623b6798b70384248c0cacf8f8de419c9a
packet: free packet_rollover after synchronize_net

Destruction of the po->rollover must be delayed until there are no
more packets in flight that can access it. The field is destroyed in
packet_release, before synchronize_net. Delay using rcu.

Fixes: 0648ab70afe6 ("packet: rollover prepare: per-socket state")

Suggested-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: Willem de Bruijn <willemb@google.com>
Acked-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/packet/af_packet.c
net/packet/internal.h