lkml.org 
[lkml]   [2007]   [Feb]   [9]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
/
DateFri, 9 Feb 2007 16:12:45 -0800 (PST)
FromLinus Torvalds <>
SubjectRe: [PATCH 0 of 4] Generic AIO by scheduling stacks

On Sat, 10 Feb 2007, Eric Dumazet wrote:
> 
> Well, I guess if the original program was mono-threaded, and syscall used
> fget_light(), we might have a problem here if the child try a close(). So you
> may have to disable fget_light() magic if async call is the originator of the
> syscall.

Yes. All the issues that I already brought up with Zach's patches are 
still there. This doesn't really change any of them. Any optimization that 
checks for "am I single-threaded" will need to be aware of pending and 
running async things.

With my patch, any _running_ async things will always be seen as normal 
clones, but the pending ones won't. So you'd need to effectively change 
anything that looks like

	if (atomic_read(&current->mm->count) == 1)
		.. do some simplified version ..
into

	if (!current->async_cookie && atomic_read(..) == 1)
		.. do the simplified thing ..
to make it safe.

I think we only do it for fget_light and some VM TLB simplification, so it 
shouldn't be a big burden to check.

Side note: the real issues still remain. The interfaces, and the 
performance testing.

		Linus
-
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/

\
 
 \ /
  Last update: 2007-02-10 01:17    [from the cache]
©2003-2008