* 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).