Re: [PATCH 0 of 4] Generic AIO by scheduling stacks

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On Tue, 30 Jan 2007, Linus Torvalds wrote:
> 
> But from a quick overview of the patches, I really don't see anything 
> fundamentally wrong. It needs some error checking and some limiting (I 
> _really_ don't think we want a regular user starting a thousand fibrils 
> concurrently), but it actually looks much less invasive than I thought it 
> would be.

Side note (and maybe this was obvious to people already): I would suggest 
that the "limiting" not be done the way fork() is limited ("return EAGAIN 
if you go over a limit") but be done as a per-task counting semaphore 
(down() on submit, up() on fibril exit).

So we should limit these to basically have some maximum concurrency 
factor, but rather than consider it an error to go over it, we'd just cap 
the concurrency by default, so that people can freely use asynchronous 
interfaces without having to always worry about what happens if their 
resources run out..

However, that also implies that we should probably add a "flags" parameter 
to "async_submit()" and have a FIBRIL_IMMEDIATE flag (or a timeout) or 
something to tell the kernel to rather return EAGAIN than wait. Sometimes 
you don't want to block just because you already have too much work.

Hmm?

		Linus
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux