Skip to contentSkip to conversation

2.6.13.5 review cycle

PATCH New Greg Kroah-Hartman 1 participant 4 messages Dec 13, 2005

Subsystems (3)
lore
Share & tools
lore
#0 lore raw

cover 2.6.13.5 review cycle

Because people have asked for this, I'm flushing out the pending patches that we had in the 2.6.13-stable queue. Right now there are only 2 patches in here, and I've been told that people have others. So, I'm putting these two out for review, and saying that we will accept patches for 2.6.13.6 also. If anyone has anything they want to see put in, please send them to [email protected] and explicitly state that you want the patch to go into the 2.6.13 kernel tree. All of the normal -stable rules (as documented in Documentation/stable_kernel_rules.txt still apply here.)

----------------

This is the start of the stable review cycle for the 2.6.13.5 release. There are 2 patches in this series, all will be posted as a response to this one. If anyone has any issues with these being applied, please let us know. If anyone is a maintainer of the proper subsystem, and wants to add a signed-off-by: line to the patch, please respond with it.

These patches are sent out with a number of different people on the Cc:
line. If you wish to be a reviewer, please email [email protected] to add your name to the list. If you want to be off the reviewer list, also email us.

Responses should be made by December 15, 06:00:00 UTC UTC. Anything received after that time, might be too late.

thanks,

the -stable release team

#1 lore raw

PATCH 1/2 : Fix compile error in irq.c

-stable review patch. If anyone has any objections, please let us know.

------------------
From: Sven Hartge <[email protected]>

irq.c is missing the inclusion of asm/io.h, which causes readb() and writeb() the be undefined.

---
 arch/sparc64/kernel/irq.c |    1 +
 1 file changed, 1 insertion(+)
arch/sparc64/kernel/irq.c +1 -0
@@ -27,6 +27,7 @@
 #include <asm/atomic.h>
 #include <asm/system.h>
 #include <asm/irq.h>
+#include <asm/io.h>
 #include <asm/sbus.h>
 #include <asm/iommu.h>
 #include <asm/upa.h>

--

#2 lore raw

PATCH 2/2 br: fix race on bridge del if

In reply to Greg Kroah-Hartman

-stable review patch. If anyone has any objections, please let us know.

------------------
From: Stephen Hemminger <[email protected]>

This fixes the RCU race on bridge delete interface. Basically, the network device has to be detached from the bridge in the first step (pre-RCU), rather than later. At that point, no more bridge traffic will come in, and the other code will not think that network device is part of a bridge.

This should also fix the XEN test problems. If there is another 2.6.13-stable, add it as well.

---
 net/bridge/br_if.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
net/bridge/br_if.c +1 -1
@@ -79,7 +79,6 @@ static void destroy_nbp(struct net_bridg
 {
 	struct net_device *dev = p->dev;
 
-	dev->br_port = NULL;
 	p->br = NULL;
 	p->dev = NULL;
 	dev_put(dev);
@@ -100,6 +99,7 @@ static void del_nbp(struct net_bridge_po
 	struct net_bridge *br = p->br;
 	struct net_device *dev = p->dev;
 
+	dev->br_port = NULL;
 	dev_set_promiscuity(dev, -1);
 
 	spin_lock_bh(&br->lock);

--

#3 lore raw

PATCH 2/2 br: fix race on bridge del if

In reply to Greg Kroah-Hartman

-stable review patch. If anyone has any objections, please let us know.

------------------
From: Stephen Hemminger <[email protected]>

This fixes the RCU race on bridge delete interface. Basically, the network device has to be detached from the bridge in the first step (pre-RCU), rather than later. At that point, no more bridge traffic will come in, and the other code will not think that network device is part of a bridge.

This should also fix the XEN test problems. If there is another 2.6.13-stable, add it as well.

---
 net/bridge/br_if.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
net/bridge/br_if.c +1 -1
@@ -79,7 +79,6 @@ static void destroy_nbp(struct net_bridg
 {
 	struct net_device *dev = p->dev;
 
-	dev->br_port = NULL;
 	p->br = NULL;
 	p->dev = NULL;
 	dev_put(dev);
@@ -100,6 +99,7 @@ static void del_nbp(struct net_bridge_po
 	struct net_bridge *br = p->br;
 	struct net_device *dev = p->dev;
 
+	dev->br_port = NULL;
 	dev_set_promiscuity(dev, -1);
 
 	spin_lock_bh(&br->lock);

--