Messages in this thread | | | From | kuznet@ms2 ... | Subject | Re: softirq in pre3 and all linux ports | Date | Thu, 21 Jun 2001 20:58:07 +0400 (MSK DST) |
| |
Hello!
> TUX also has per-cpu timers patch of Ingo as well. > Did you forget this? :-)
If I remember correctly, it has threaded timer pool, but timers still acquire global bh lock, so that the things become only worse. Apparently, it is invisible at first sight because bulk work typical for tux and triggered by timers, is moved to cpu local tasklets (garbage collection: time wait etc.).
> It is equivalent to some old dumb code doing cli() right?
Sort of.
> The only interesting global BHs left right now are: > > 1) Timers > 2) SCSI BH
In generic server case, yes.
But also add BH_IMMEDIATE and BHs, used by hordes of devices.
> Timers have no hard technical reason for not being a softirq > either. However, this would be work requiring real thought, > not just mindless edits.
Yes.
But, in any case, global BHs are not a pathalogy: they were handy tool, allowing to hide lots of spinlocks. And not plain spinlocks, but asynchronous ones. It was pretty light, but had latency up to 1/HZ in the worst case. Now they have unreasonably strict latency (useless, as rule) but eat cpu instead.
Alexey - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |