On Mon, 2007-10-09 at 21:00 +0800, Herbert Xu wrote:
> The minimal fix would be to make sure that we disable BH on
> the first CPU.
disabling BH would make it more symmetric to the way we handle
egress. I couldnt reproduce the issue, but this should hopefully resolve
it.
Christian, can you test with this patch?
cheers,
jamal
[NET_SCHED] make ingress qlock symmetric to egress
Signed-off-by: Jamal Hadi Salim <[email protected]>
--- a/net/sched/sch_generic.c 2007/09/10 23:19:45 1.1
+++ b/net/sched/sch_generic.c 2007/09/10 23:52:45
@@ -42,12 +42,12 @@
void qdisc_lock_tree(struct net_device *dev)
{
spin_lock_bh(&dev->queue_lock);
- spin_lock(&dev->ingress_lock);
+ spin_lock_bh(&dev->ingress_lock);
}
void qdisc_unlock_tree(struct net_device *dev)
{
- spin_unlock(&dev->ingress_lock);
+ spin_unlock_bh(&dev->ingress_lock);
spin_unlock_bh(&dev->queue_lock);
}
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]