Re: Approaches to making io_submit not block

Andi Kleen
2011-08-31T17:08:55Z

Christoph Hellwig <hch@infradead.org> writes:
>
> I'll get it polished up and send it out for RFC once Dave sends out
> the updated allocation workqueue patch. With this he moves all
> allocator calls in XFS into a workqueue. My direct I/O patch uses that
> fact to use that workqueue for the allocator call

Is that really a good direction? The problem when you push operations
from multiple threads all into a single resource (per cpu workqueue)
is that the CPU scheduler loses control over that because they
are all mixed up.

So if one guy submits a lot and another very little the "a lot" guy
can overwhelm the queue for the very little guy.

We also have similar problems with the IO schedulers, which also
rely on process context to make fairness decisions. If you remove
the process context they do badly.

-Andi

--
ak@linux.intel.com -- Speaking for myself only