Re: Syslets, Threadlets, generic AIO support, v6

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Ingo Molnar
Date: Wednesday, May 30, 2007 - 1:42 am

* Ulrich Drepper <drepper@redhat.com> wrote:


yeah - this is a fundamental design question for Linus i guess :-) glibc 
(and other infrastructure libraries) have a fundamental problem: they 
cannot (and do not) presently use persistent file descriptors to make 
use of kernel functionality, due to ABI side-effects. [applications can 
dup into an fd used by glibc, applications can close it - shells close 
fds blindly for example, etc.] Today glibc simply cannot open a file 
descriptor and keep it open while application code is running due to 
these problems.

we should perhaps enable glibc to have its separate fd namespace (or 
'hidden' file descriptors at the upper end of the fd space) so that it 
can transparently listen to netlink events (or do epoll), without 
impacting the application fd namespace - instead of ducking to a memory 
based API as a workaround.

it is a serious flexibility issue that should not be ignored. The 
unified fd space is a blessing on one hand because it's simple and 
powerful, but it's also a curse because nested use of the fd space for 
libraries is currently not possible. But it should be detached from any
fundamental question of kevent vs. epoll. (By improving library use of
file descriptors we'll improve the utility of all syscalls - by ducking
to a memory based API we only solve that particular event based usage.)

	Ingo
-
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
Syslets, Threadlets, generic AIO support, v6, Zach Brown, (Tue May 29, 2:27 pm)
Re: Syslets, Threadlets, generic AIO support, v6, Linus Torvalds, (Tue May 29, 2:49 pm)
Re: Syslets, Threadlets, generic AIO support, v6, Jeff Garzik, (Tue May 29, 3:16 pm)
Re: Syslets, Threadlets, generic AIO support, v6, Zach Brown, (Tue May 29, 3:49 pm)
Re: Syslets, Threadlets, generic AIO support, v6, Zach Brown, (Tue May 29, 4:09 pm)
Re: Syslets, Threadlets, generic AIO support, v6, Ulrich Drepper, (Tue May 29, 4:20 pm)
Re: Syslets, Threadlets, generic AIO support, v6, Dave Jones, (Tue May 29, 6:11 pm)
Re: Syslets, Threadlets, generic AIO support, v6, Ingo Molnar, (Wed May 30, 12:20 am)
Re: Syslets, Threadlets, generic AIO support, v6, Ingo Molnar, (Wed May 30, 12:26 am)
Re: Syslets, Threadlets, generic AIO support, v6, Ulrich Drepper, (Wed May 30, 12:31 am)
Re: Syslets, Threadlets, generic AIO support, v6, Jens Axboe, (Wed May 30, 12:40 am)
Re: Syslets, Threadlets, generic AIO support, v6, Evgeniy Polyakov, (Wed May 30, 1:32 am)
Re: Syslets, Threadlets, generic AIO support, v6, Ingo Molnar, (Wed May 30, 1:42 am)
Re: Syslets, Threadlets, generic AIO support, v6, Evgeniy Polyakov, (Wed May 30, 1:51 am)
Re: Syslets, Threadlets, generic AIO support, v6, Ingo Molnar, (Wed May 30, 1:54 am)
Re: Syslets, Threadlets, generic AIO support, v6, Ingo Molnar, (Wed May 30, 2:05 am)
Re: Syslets, Threadlets, generic AIO support, v6, Jeff Garzik, (Wed May 30, 2:28 am)
Re: Syslets, Threadlets, generic AIO support, v6, Evgeniy Polyakov, (Wed May 30, 2:30 am)
Re: Syslets, Threadlets, generic AIO support, v6, Ingo Molnar, (Wed May 30, 6:02 am)
Re: Syslets, Threadlets, generic AIO support, v6, Ingo Molnar, (Wed May 30, 6:20 am)
Re: Syslets, Threadlets, generic AIO support, v6, Linus Torvalds, (Wed May 30, 8:16 am)
Re: Syslets, Threadlets, generic AIO support, v6, Linus Torvalds, (Wed May 30, 8:31 am)
Re: Syslets, Threadlets, generic AIO support, v6, Ulrich Drepper, (Wed May 30, 8:39 am)
Re: Syslets, Threadlets, generic AIO support, v6, Ingo Molnar, (Wed May 30, 9:09 am)
Re: Syslets, Threadlets, generic AIO support, v6, Zach Brown, (Wed May 30, 9:55 am)
Re: Syslets, Threadlets, generic AIO support, v6, Zach Brown, (Wed May 30, 10:08 am)
Re: Syslets, Threadlets, generic AIO support, v6, Jens Axboe, (Wed May 30, 10:33 am)
Re: Syslets, Threadlets, generic AIO support, v6, Jens Axboe, (Wed May 30, 10:57 am)
Re: Syslets, Threadlets, generic AIO support, v6, Mark Lord, (Wed May 30, 12:05 pm)
Re: Syslets, Threadlets, generic AIO support, v6, Jens Axboe, (Wed May 30, 12:10 pm)
Re: Syslets, Threadlets, generic AIO support, v6, Linus Torvalds, (Wed May 30, 12:15 pm)
Re: Syslets, Threadlets, generic AIO support, v6, Jens Axboe, (Wed May 30, 12:32 pm)
Re: Syslets, Threadlets, generic AIO support, v6, Davide Libenzi, (Wed May 30, 12:40 pm)
Re: Syslets, Threadlets, generic AIO support, v6, Davide Libenzi, (Wed May 30, 12:52 pm)
Re: Syslets, Threadlets, generic AIO support, v6, Ulrich Drepper, (Wed May 30, 12:55 pm)
Re: Syslets, Threadlets, generic AIO support, v6, Linus Torvalds, (Wed May 30, 1:00 pm)
Re: Syslets, Threadlets, generic AIO support, v6, Eric Dumazet, (Wed May 30, 1:07 pm)
Re: Syslets, Threadlets, generic AIO support, v6, Davide Libenzi, (Wed May 30, 1:21 pm)
Re: Syslets, Threadlets, generic AIO support, v6, Eric Dumazet, (Wed May 30, 1:31 pm)
Re: Syslets, Threadlets, generic AIO support, v6, Linus Torvalds, (Wed May 30, 1:31 pm)
Re: Syslets, Threadlets, generic AIO support, v6, Linus Torvalds, (Wed May 30, 1:44 pm)
Re: Syslets, Threadlets, generic AIO support, v6, Eric Dumazet, (Wed May 30, 1:46 pm)
Re: Syslets, Threadlets, generic AIO support, v6, Ulrich Drepper, (Wed May 30, 2:16 pm)
Re: Syslets, Threadlets, generic AIO support, v6, Linus Torvalds, (Wed May 30, 2:27 pm)
Re: Syslets, Threadlets, generic AIO support, v6, Davide Libenzi, (Wed May 30, 2:31 pm)
Re: Syslets, Threadlets, generic AIO support, v6, Jeremy Fitzhardinge, (Wed May 30, 2:36 pm)
Re: Syslets, Threadlets, generic AIO support, v6, Jeremy Fitzhardinge, (Wed May 30, 2:38 pm)
Re: Syslets, Threadlets, generic AIO support, v6, Davide Libenzi, (Wed May 30, 2:39 pm)
Re: Syslets, Threadlets, generic AIO support, v6, Linus Torvalds, (Wed May 30, 2:44 pm)
Re: Syslets, Threadlets, generic AIO support, v6, Ulrich Drepper, (Wed May 30, 2:47 pm)
Re: Syslets, Threadlets, generic AIO support, v6, Linus Torvalds, (Wed May 30, 2:48 pm)
Re: Syslets, Threadlets, generic AIO support, v6, Davide Libenzi, (Wed May 30, 2:48 pm)
Re: Syslets, Threadlets, generic AIO support, v6, David M. Lloyd, (Wed May 30, 2:51 pm)
Re: Syslets, Threadlets, generic AIO support, v6, Eric Dumazet, (Wed May 30, 2:53 pm)
Re: Syslets, Threadlets, generic AIO support, v6, Jeremy Fitzhardinge, (Wed May 30, 2:54 pm)
Re: Syslets, Threadlets, generic AIO support, v6, Linus Torvalds, (Wed May 30, 3:01 pm)
Re: Syslets, Threadlets, generic AIO support, v6, Davide Libenzi, (Wed May 30, 3:06 pm)
Re: Syslets, Threadlets, generic AIO support, v6, Eric Dumazet, (Wed May 30, 3:09 pm)
Re: Syslets, Threadlets, generic AIO support, v6, William Lee Irwin III, (Wed May 30, 3:24 pm)
Re: Syslets, Threadlets, generic AIO support, v6, Matt Mackall, (Wed May 30, 3:27 pm)
Re: Syslets, Threadlets, generic AIO support, v6, William Lee Irwin III, (Wed May 30, 3:38 pm)
Re: Syslets, Threadlets, generic AIO support, v6, Ingo Molnar, (Wed May 30, 11:13 pm)
Re: Syslets, Threadlets, generic AIO support, v6, Eric Dumazet, (Thu May 31, 12:35 am)
Re: Syslets, Threadlets, generic AIO support, v6, Ingo Molnar, (Thu May 31, 2:02 am)
Re: Syslets, Threadlets, generic AIO support, v6, Ingo Molnar, (Thu May 31, 2:26 am)
Re: Syslets, Threadlets, generic AIO support, v6, Ingo Molnar, (Thu May 31, 2:32 am)
Re: Syslets, Threadlets, generic AIO support, v6, Jens Axboe, (Thu May 31, 2:34 am)
Re: Syslets, Threadlets, generic AIO support, v6, Eric Dumazet, (Thu May 31, 3:41 am)
Re: Syslets, Threadlets, generic AIO support, v6, Ingo Molnar, (Thu May 31, 3:50 am)