Different scheduler behavior between 2.4 and 2.6

From: Quan Sun
Date: Thu May 10 2007 - 01:47:09 EST


Hi,
Recently I met a problem on different scheduler behavior between
2.4.22 and 2.6.18.8.
The application works as a proxy, it listen on an interface,
connect through another interface. This application works on a box
with two Xeon cpu, each of them is hyper-threading.
On 2.4.22, CPU0 serve interrupts, the application works on other
three CPUs.
But on 2.6.18.8, if I turn on 'noirqbalance' kernel parameter, and no
irqbalance process, the application will stuck to CPU0 as well as interrupts
after several seconds' working. Then there will be a 0% idle cpu, and
three 100%idle CPUs.

/proc/interrupt shows all eths's interrupts are working at CPU0.

It seems that scheduler ignores the working load of interrupts.

My question is, is there a way to tune 2.6 kernel working as 2.4?
Just one cpu for interrupts, other three cpu for normal work.

--
Quan Sun
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/