netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Re: [PATCH] bonding: Fix sysfs attribute handling
       [not found] <200803211452.55982.lpechacek@suse.cz>
@ 2008-03-23  0:27 ` Andrew Morton
  2008-03-23  1:12   ` Jay Vosburgh
  0 siblings, 1 reply; 3+ messages in thread
From: Andrew Morton @ 2008-03-23  0:27 UTC (permalink / raw)
  To: Libor Pechacek; +Cc: fubar, bonding-devel, linux-kernel, netdev, stable

On Fri, 21 Mar 2008 14:52:55 +0100 Libor Pechacek <lpechacek@suse.cz> wrote:

> bonding: Fix sysfs attribute handling
> 
> For bonding interfaces any attempt to read the sysfs directory contents after
> module removal results in an oops.  The fix is to release sysfs attributes
> for the interfaces upon module unload.
> 
> Signed-off-by: Libor Pechacek <lpechacek@suse.cz>
> --
>  drivers/net/bonding/bond_main.c |    3 +--
>  1 files changed, 1 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/net/bonding/bond_main.c b/drivers/net/bonding/bond_main.c
> index 0942d82..33767d4 100644
> --- a/drivers/net/bonding/bond_main.c
> +++ b/drivers/net/bonding/bond_main.c
> @@ -4528,8 +4528,7 @@ static void bond_free_all(void)
>  		netif_tx_unlock_bh(bond_dev);
>  		/* Release the bonded slaves */
>  		bond_release_all(bond_dev);
> -		bond_deinit(bond_dev);
> -		unregister_netdevice(bond_dev);
> +		bond_destroy(bond);
>  	}

Is this also needed in 2.6.24.x?

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] bonding: Fix sysfs attribute handling
  2008-03-23  0:27 ` [PATCH] bonding: Fix sysfs attribute handling Andrew Morton
@ 2008-03-23  1:12   ` Jay Vosburgh
  2008-03-23 20:05     ` lpechacek
  0 siblings, 1 reply; 3+ messages in thread
From: Jay Vosburgh @ 2008-03-23  1:12 UTC (permalink / raw)
  To: Andrew Morton; +Cc: Libor Pechacek, bonding-devel, linux-kernel, netdev, stable

Andrew Morton <akpm@linux-foundation.org> wrote:

>On Fri, 21 Mar 2008 14:52:55 +0100 Libor Pechacek <lpechacek@suse.cz> wrote:
>
>> bonding: Fix sysfs attribute handling
>> 
>> For bonding interfaces any attempt to read the sysfs directory contents after
>> module removal results in an oops.  The fix is to release sysfs attributes
>> for the interfaces upon module unload.
>> 
>> Signed-off-by: Libor Pechacek <lpechacek@suse.cz>
>> --
>>  drivers/net/bonding/bond_main.c |    3 +--
>>  1 files changed, 1 insertions(+), 2 deletions(-)
>> 
>> diff --git a/drivers/net/bonding/bond_main.c b/drivers/net/bonding/bond_main.c
>> index 0942d82..33767d4 100644
>> --- a/drivers/net/bonding/bond_main.c
>> +++ b/drivers/net/bonding/bond_main.c
>> @@ -4528,8 +4528,7 @@ static void bond_free_all(void)
>>  		netif_tx_unlock_bh(bond_dev);
>>  		/* Release the bonded slaves */
>>  		bond_release_all(bond_dev);
>> -		bond_deinit(bond_dev);
>> -		unregister_netdevice(bond_dev);
>> +		bond_destroy(bond);
>>  	}
>
>Is this also needed in 2.6.24.x?

	Yes (I haven't tested it personally, but the affected code is
the same).  I was going to forward this to stable when it was accepted
upstream.  The oops is fairly straightforward to create:

# modprobe bonding
# cd /sys/class/net/bond0/bonding
# rmmod bonding
# ls

	-J

---
	-Jay Vosburgh, IBM Linux Technology Center, fubar@us.ibm.com

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] bonding: Fix sysfs attribute handling
  2008-03-23  1:12   ` Jay Vosburgh
@ 2008-03-23 20:05     ` lpechacek
  0 siblings, 0 replies; 3+ messages in thread
From: lpechacek @ 2008-03-23 20:05 UTC (permalink / raw)
  To: Jay Vosburgh
  Cc: Andrew Morton, Libor Pechacek, bonding-devel, linux-kernel,
	netdev, stable

> Andrew Morton <akpm@linux-foundation.org> wrote:
>
>>On Fri, 21 Mar 2008 14:52:55 +0100 Libor Pechacek <lpechacek@suse.cz>
>> wrote:
>>
>>> bonding: Fix sysfs attribute handling
>>>
>>> For bonding interfaces any attempt to read the sysfs directory contents
>>> after
>>> module removal results in an oops.  The fix is to release sysfs
>>> attributes
>>> for the interfaces upon module unload.
>>>
>>> Signed-off-by: Libor Pechacek <lpechacek@suse.cz>
>>> --
>>>  drivers/net/bonding/bond_main.c |    3 +--
>>>  1 files changed, 1 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/drivers/net/bonding/bond_main.c
>>> b/drivers/net/bonding/bond_main.c
>>> index 0942d82..33767d4 100644
>>> --- a/drivers/net/bonding/bond_main.c
>>> +++ b/drivers/net/bonding/bond_main.c
>>> @@ -4528,8 +4528,7 @@ static void bond_free_all(void)
>>>  		netif_tx_unlock_bh(bond_dev);
>>>  		/* Release the bonded slaves */
>>>  		bond_release_all(bond_dev);
>>> -		bond_deinit(bond_dev);
>>> -		unregister_netdevice(bond_dev);
>>> +		bond_destroy(bond);
>>>  	}
>>
>>Is this also needed in 2.6.24.x?
>
> 	Yes (I haven't tested it personally, but the affected code is
> the same).  I was going to forward this to stable when it was accepted
> upstream.  The oops is fairly straightforward to create:
>
> # modprobe bonding
> # cd /sys/class/net/bond0/bonding
> # rmmod bonding
> # ls

Yes, exactly.

I tested the patch with the latest Linus' tree (GIT commit
49a5ba46c5d1e34bcb07634157b29d7414ce13bd), but I first found the bug in
2.6.16.

Libor


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2008-03-23 20:05 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <200803211452.55982.lpechacek@suse.cz>
2008-03-23  0:27 ` [PATCH] bonding: Fix sysfs attribute handling Andrew Morton
2008-03-23  1:12   ` Jay Vosburgh
2008-03-23 20:05     ` lpechacek

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).