|
|
Re: [RFC] NETDEV_UNREGISTER_BATCH seems unused nowaday ? |
On Fri, 2012-08-10 at 03:42 -0700, David Miller wrote: > From: Eric Dumazet <eric.dumazet@xxxxxxxxx> > Date: Fri, 10 Aug 2012 11:27:04 +0200 > > > NETDEV_UNREGISTER_BATCH seems unused we can probably remove it. > > Indeed, the routing cache was the final real user. > > > I am tracking a device refcount issue, delaying net device dismantle by > > 1 second in netdev_wait_allrefs() > > > > I guess we need to add a notifier called _after_ the final > > synchronize_net() in rollback_registered_many() > > It's essentially caused by DST_GC_INC, right? No, we in fact need a rcu_barrier(), then another call to dst_dev_event(). rcu_barrier() is needed so that in-flight call_rcu() of routes (from rt_free()) are completed. Or else we miss these dst in the dst_dev_event(). I have a working patch, adding the rcu_barrier() and one additional NETDEV_UNREGISTER_FINAL event. -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html
[Linux Kernel Discussion] [Ethernet Bridging] [Linux Wireless Networking] [Linux Bluetooth Networking] [Linux Networking Users] [VLAN] [Git] [IETF Annouce] [Linux Assembly] [Security] [Bugtraq] [Photo] [Singles Social Networking] [Yosemite Information] [MIPS Linux] [ARM Linux Kernel] [ARM Linux] [Linux Virtualization] [Linux Security] [Linux IDE] [Linux RAID] [Linux SCSI] [Free Dating]
![]() |
![]() |