On Wed, Nov 11, 2009 at 08:16:35PM +0100, ????? ???????????? wrote: > Why don't you rename the class to zfsiosched If the class is tailored > to support zfs only or kerneliosched if the class is tailored to > support kernel io only?
Because it is not; it's designed for CPU-intensive kernel threads for which the default SYS class is inadequate. The fact that ZFS IO threads are the first ones to use it is because they can be fairly extreme CPU hogs. The name already reflects this; SDC (System Duty Cycle), modeled on SYS (System Class), which is also restricted to kernel threads only. > In my eyes its is a clear design fault to restrict such a class to > kernel threads only. You are locking out user land daemons which have > similar duties as the zfs threads you describe in this case. As an aside, userland daemons needing to run at system priorities can use the FX or RT classes to do so. The reason this is Consolidation-Private and kernel-only is that we are still evolving the exact details of how the class works. When there are more consumers, investigation into making it possible for user threads to join the class would be appropriate. Cheers, - jonathan