From: Nikolay Aleksandrov <hidden> Date: 2012-11-24 12:22:00
Race between bonding_store_slaves_active() and slave manipulation functions
The bond_for_each_slave use in bonding_store_slaves_active() is not protected
by any synchronization mechanism. NULL pointer dereference is easy to reach.
Fixed by acquiring the bond->lock for the slave walk.
Signed-off-by: Nikolay Aleksandrov <redacted>
---
drivers/net/bonding/bond_sysfs.c | 2 ++
1 file changed, 2 insertions(+)
From: Nikolay Aleksandrov <hidden> Date: 2012-11-29 12:18:02
Race between bonding_store_slaves_active() and slave manipulation
functions. The bond_for_each_slave use in bonding_store_slaves_active()
is not protected by any synchronization mechanism.
NULL pointer dereference is easy to reach.
Fixed by acquiring the bond->lock for the slave walk.
v2: Make description text < 75 columns
Signed-off-by: Nikolay Aleksandrov <redacted>
---
drivers/net/bonding/bond_sysfs.c | 2 ++
1 file changed, 2 insertions(+)
From: Jay Vosburgh <hidden> Date: 2012-11-29 17:38:22
Nikolay Aleksandrov [off-list ref] wrote:
Race between bonding_store_slaves_active() and slave manipulation
functions. The bond_for_each_slave use in bonding_store_slaves_active()
is not protected by any synchronization mechanism.
NULL pointer dereference is easy to reach.
Fixed by acquiring the bond->lock for the slave walk.
v2: Make description text < 75 columns
Signed-off-by: Nikolay Aleksandrov <redacted>
From: David Miller <davem@davemloft.net> Date: 2012-11-29 18:14:11
From: Jay Vosburgh <redacted>
Date: Thu, 29 Nov 2012 09:37:56 -0800
Nikolay Aleksandrov [off-list ref] wrote:
quoted
Race between bonding_store_slaves_active() and slave manipulation
functions. The bond_for_each_slave use in bonding_store_slaves_active()
is not protected by any synchronization mechanism.
NULL pointer dereference is easy to reach.
Fixed by acquiring the bond->lock for the slave walk.
v2: Make description text < 75 columns
Signed-off-by: Nikolay Aleksandrov <redacted>