| To: | "David S. Miller" <davem@xxxxxxxxxx> |
|---|---|
| Subject: | Re: 2.6.7-rc3: unregister_netdevice: waiting for tun0 to become free. Usage count = 1 |
| From: | Alexey Kuznetsov <kuznet@xxxxxxxxxxxxx> |
| Date: | Thu, 17 Jun 2004 00:37:48 +0400 |
| Cc: | herbert@xxxxxxxxxxxxxxxxxxx, schwab@xxxxxxx, netdev@xxxxxxxxxxx, yoshfuji@xxxxxxxxxxxxxx |
| In-reply-to: | <20040616130950.6aadde3c.davem@xxxxxxxxxx> |
| References: | <E1BZeW1-0008Ny-00@xxxxxxxxxxxxxxxxxxxxxxxx> <20040613234142.GA32329@xxxxxxxxxxxxxxxxxxx> <20040613183622.3a814506.davem@xxxxxxxxxx> <20040614015013.GA11048@xxxxxxxxxxxxxxxxxxx> <20040613210725.70dbd016.davem@xxxxxxxxxx> <20040614042216.GA28669@xxxxxxxxxxxxxxxxxxx> <20040614102858.GA12343@xxxxxxxxxxxxxxxxxxx> <20040614124402.GA28519@xxxxxxxxxxxxxxxxxxx> <20040616193731.GB29781@xxxxxxxxxxxxx> <20040616130950.6aadde3c.davem@xxxxxxxxxx> |
| Sender: | netdev-bounce@xxxxxxxxxxx |
| User-agent: | Mutt/1.5.6i |
Hello!
> > bug. It makes sense to think about waiting for at least one quiescent
> > state after detaching the stale device from dst and real dev_put() it.
> > Reference to RCU is not occasional, the job looks natural for it.
>
> It seems a simple synchronize_kernel() would clear all the
> crap no?
Sort of. I think it should happen after killing reference to dst->dev:
+ dst->dev = &loopback_dev;
+ dev_hold(&loopback_dev);
but before dropping reference to dev:
+ dev_put(dev);
So, I think it should look like:
dst->dev = &loopback_dev;
dev_hold(&loopback_dev);
+ synchronize_kernel();
dev_put(dev);
(sorry, I still do not have Herbert's patch pulled)
Alexey
|
| Previous by Date: | Re: [Prism54-devel] Re: [Prism54] CVS -> bk tree update, Jeff Garzik |
|---|---|
| Next by Date: | Re: 2.6.7-rc3: unregister_netdevice: waiting for tun0 to become free. Usage count = 1, David S. Miller |
| Previous by Thread: | Re: 2.6.7-rc3: unregister_netdevice: waiting for tun0 to become free. Usage count = 1, David S. Miller |
| Next by Thread: | Re: 2.6.7-rc3: unregister_netdevice: waiting for tun0 to become free. Usage count = 1, David S. Miller |
| Indexes: | [Date] [Thread] [Top] [All Lists] |