af_packet: mc_drop/flush_mclist changes
Subsystems (3)
PATCH 1/1 af_packet: mc_drop/flush_mclist changes
We hold RTNL, we can use __dev_get_by_index() instead of dev_get_by_index()
Signed-off-by Eric Dumazet <[email protected]>
---
net/packet/af_packet.c +4 -8
@@ -1664,11 +1664,9 @@ static int packet_mc_drop(struct sock *sk, struct packet_mreq_max *mreq)if (--ml->count ==0 ) {struct net_device *dev; *mlp = ml->next; - dev =dev_get_by_index (sock_net (sk), ml->ifindex); -if (dev) { + dev =__dev_get_by_index (sock_net (sk), ml->ifindex); +if (dev)packet_dev_mc (dev, ml,-1 ); -dev_put (dev); - }kfree (ml); }rtnl_unlock ();
@@ -1692,11 +1690,9 @@ static void packet_flush_mclist(struct sock *sk)struct net_device *dev; po->mclist = ml->next; - dev =dev_get_by_index (sock_net (sk), ml->ifindex); -if (dev !=NULL ) { + dev =__dev_get_by_index (sock_net (sk), ml->ifindex); +if (dev !=NULL )packet_dev_mc (dev, ml,-1 ); -dev_put (dev); - }kfree (ml); }rtnl_unlock ();
From: Eric Dumazet <[email protected]>
Date: Fri, 16 Oct 2009 18:38:46 +0200
Quoted 3 lines
We hold RTNL, we can use
__dev_get_by_index()instead ofdev_get_by_index()Signed-off-by Eric Dumazet <[email protected]>
Applied.