> The attached patch does the following to 2.5.3-pre5:
>
> * consolidates various status items that are found in the lower reaches of
> task_struct into one 32-bit word, thus allowing them to be tested
> atomically without the need to disable interrupts in entry.S.
>
> * optimises the instructions in the system_call path in entry.S
>
> * frees up a hole in the bottom part of the task_struct (on the 1st cache
> line).
>
> * improves base syscall latency by approximately 5.4% (dual PIII) or 3.6%
> (dual Athlon) as measured by lmbench's "lat_syscall null" command against
> the vanilla kernel.
Mmm, I like it. Ingo Molnar talked to me about this (he wants such a
feature, too) earlier. This is a real win.
This patch is beneficial to the kernel preemption patch. I suspect
other future ideas could be added now without hurting the common case,
too. I had planned to roll need_resched into our preemption counter,
and I probably still can even with only 1 byte.
Anyhow, I'm looking it over -- good code.
Robert Love
-
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/