At this point, given how threadlets can be easily/effectively dispatched
from userspace, I'd argue the presence of either single/parallel or syslet
submission altogether. Threadlets allows you to code chains *way* more
naturally than syslets, and since they basically are like functions calls
in the fast path, they can be used even for single/parallel submissions.
No compat code required (ok, besides the trivial async_wait).
My point is, the syslet infrastructure is expensive for the kernel in
terms of compat, and extra code added to handle the cond/jumps/etc. Is
also non-trivial to use from userspace. Are those big performance
advantages there to justify its existence? I doubt that the price of a
sysenter is a lot bigger than a atom decoding, but I'm looking forward in
being proven wrong by real life performance numbers ;)
- Davide
-