Re: PROBLEM: 2.6.11-rc2 hangs on bridge shutdown (br0)

From: YOSHIFUJI Hideaki / 吉藤英明
Date: Sat Feb 05 2005 - 23:39:04 EST


In article <20050205201044.1b95f4e8.davem@xxxxxxxxxxxxx> (at Sat, 5 Feb 2005 20:10:44 -0800), "David S. Miller" <davem@xxxxxxxxxxxxx> says:

> > Alternatively we can
> > remove the dst->dev == dev check in dst_dev_event and dst_ifdown
> > and move that test down to the individual ifdown functions.
>
> I think there is a hole in this idea.... maybe.
>
> If the idea is to scan dst_garbage_list down in ipv6 specific code,
> you can't do that since 'dst' objects from every pool in the kernel
> get put onto the dst_garbage_list. It is generic.

How about making dst->ops->dev_check() like this:

static int inline dst_dev_check(struct dst_entry *dst, struct net_device *dev)
{
if (dst->ops->dev_check)
return dst->ops->dev_check(dst, dev)
else
return dst->dev == dev;
}

--yoshfuji
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/