Subject: Re: BUG ? ipip unregister_netdevice_many()

From: Hans Schillstrom <[email-masked]>
Date: Thu, 14 Oct 2010 08:41:45 +0200

On Wednesday 13 October 2010 23:58:56 David Miller wrote:
> From: Jarek Poplawski <[email-masked]>
> Date: Wed, 13 Oct 2010 11:19:47 +0000
>
> >> -static void rt_do_flush(int process_context)
> >> +static void rt_do_flush(struct net *net, int process_context)
> >>  {
> >>  	unsigned int i;
> >>  	struct rtable *rth, *next;
> >> -	struct rtable * tail;
> >>
> >>  	for (i = 0; i <= rt_hash_mask; i++) {
> >> +		struct rtable *list, **pprev;
> >
> > Isn't "list = NULL" needed here?
>
> Yes it is, thanks for catching that.
>
It solves the crach but....

 #
Slab corruption: size-4096 start=ffff88000f950000, len=4096
010: 00 00 00 00 00 00 00 00 6b 6b 6b 6b 6b 6b 6b 6b
unregister_netdevice: waiting for lo to become free. Usage count = 4
Slab corruption: size-4096 start=ffff88000f9af000, len=4096
010: 00 00 00 00 00 00 00 00 6b 6b 6b 6b 6b 6b 6b 6b
unregister_netdevice: waiting for lo to become free. Usage count = 4
unregister_netdevice: waiting for lo to become free. Usage count = 4
unregister_netdevice: waiting for lo to become free. Usage count = 4

Regards
Hans Schillstrom <[email-masked]>