On 31/08/06, Ben Greear <greearb@xxxxxxxxxxxxxxx> wrote:I've just encountered the problem on a different server with an
> Jesper Juhl wrote:
> > Hi,
> >
> > I've got a small problem with 2.6.18-rc5-git2.
> >
> > I've got a vlan setup on eth0.20, eth0 does not have an IP.
> >
> > When I attempt to reboot or halt the machine I get the following
> > message from the loop in net/core/dev.c::netdev_wait_allrefs() where
> > it waits for the ref-count to drop to zero.
> > Unfortunately the ref-count stays at 1 forever and the server never
> > gets any further.
> >
> > unregister_netdevice: waiting for eth0.20 to become free. Usage count = 1
> >
> > I googled a bit and found that people have had similar problems in the
> > past and could work around them by shutting down the vlan interface
> > before the 'lo' interface. I tried that and indeed, it works.
> >
> > Any idea how we can get this fixed?
>
> This is usually a ref-count leak somewhere. Used to be IPv6 had
> issues..then there were some neighbor leaks...but these were fixed as
> far as I know.
>
Using IPv4 here.
> Can you reproduce this on older kernels?
>
I've not actively tried, but I do have several servers running various
older kernel releases with similar vlan setups and I'm not aware of
any problems with those. Only this new box that I'm using for testing
new kernels (currently) shows the problem, and I've only tried 2.6.8
and 2.6.18-rc5-git2 on the box so far (2.6.8 doesn't have the
problem).