SPL's are just completely braindamaged. Linux does the only sane thing,
which is to force all interrupts to be single-threaded on a per-interrupt
basis (ie the same interrupt cannot re-enter itself), but otherwise
independent of each other.
The whole notion of "interrupt priority" is just completely broken. There
is no such thing.
> Is it just historical fact, or you had some reasons to use bh instead?
The use of bh's is not something I enforced on the network layer, it's
just how people thought it would work the best. The notion of a
single-threaded software interrupt is not new per se, and the first thing
that used it was the serial drivers for completely unrelated reasons-
> Do you know any alternative to bsd splimpl()?
>
> I ask it because to all that I know our net_bh() is the reason,
> why bsd and NT behave better at super high packet load.
spl-levels is not the answer. net_bh() may be a bad implementation, but I
think you're dreaming if you think NT and BSD behave better because of
spl-levels.
Linus
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/