From: Mark Mielke <mark@mark.mielke.cc>
To: Jamie Lokier <lk@tantalophile.demon.co.uk>
Cc: Davide Libenzi <davidel@xmailserver.org>,
Edgar Toernig <froese@gmx.de>,
Ulrich Drepper <drepper@redhat.com>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: Re: [rfc] epoll interface change and glibc bits ...
Date: Wed, 20 Nov 2002 02:47:32 -0500 [thread overview]
Message-ID: <20021120074732.GA26018@mark.mielke.cc> (raw)
In-Reply-To: <20021120030919.GA9007@bjl1.asuk.net>
On Wed, Nov 20, 2002 at 03:09:19AM +0000, Jamie Lokier wrote:
> [ ... regarding 'struct epollfd' ('struct epoll_fd'?) ... ]
> What value does the `fd' field have when a file descriptor being
> polled has been renumbered (by dup/close or dup2/close or
> fcntl(F_DUPFD)/close or passing through a unix domain socket)?
As long as the kernel doesn't freeze up or leak memory, I believe it is
the responsibility of the application code to ensure that the correct
file descriptors are registered (and deregistered). If the application
code does screwy things, it should expect a little bit of undefined
behaviour.
> The `fd' field, on the other hand, is not guaranteed to correspond
> with the correct file descriptor number. So.... perhaps the structure
> should contain an `obj' field and _no_ `fd' field?
Whether the 'fd' field is in kernel space or user space or both does
not really affect the ability of the application code to be able to
perform dup() operations without needing to change references to the
'fd'. For the people that do not wish to use the 'obj' field, the 'fd'
field will be more natural. (Anybody who dups a file descriptor, and
then tells the event loop to watch both file descriptors, is asking for
trouble under any scheme...)
mark
--
mark@mielke.cc/markm@ncf.ca/markm@nortelnetworks.com __________________________
. . _ ._ . . .__ . . ._. .__ . . . .__ | Neighbourhood Coder
|\/| |_| |_| |/ |_ |\/| | |_ | |/ |_ |
| | | | | \ | \ |__ . | | .|. |__ |__ | \ |__ | Ottawa, Ontario, Canada
One ring to rule them all, one ring to find them, one ring to bring them all
and in the darkness bind them...
http://mark.mielke.cc/
next prev parent reply other threads:[~2002-11-20 7:34 UTC|newest]
Thread overview: 67+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-11-18 22:21 [rfc] epoll interface change and glibc bits Dan Kegel
2002-11-18 23:09 ` Davide Libenzi
2002-11-18 23:39 ` Dan Kegel
2002-11-18 23:20 ` Davide Libenzi
2002-11-18 23:52 ` Dan Kegel
2002-11-18 23:35 ` Davide Libenzi
2002-11-19 0:53 ` Dan Kegel
2002-11-19 1:34 ` Davide Libenzi
2002-11-19 2:08 ` Dan Kegel
2002-11-19 2:04 ` Davide Libenzi
2002-11-19 3:46 ` Edgar Toernig
2002-11-19 4:14 ` Davide Libenzi
2002-11-19 5:35 ` Edgar Toernig
2002-11-19 6:09 ` Mark Mielke
2002-11-19 17:07 ` Davide Libenzi
2002-11-20 1:59 ` Davide Libenzi
2002-11-20 3:09 ` Jamie Lokier
2002-11-20 3:46 ` Davide Libenzi
2002-11-20 4:04 ` Davide Libenzi
2002-11-20 8:01 ` Mark Mielke
2002-11-20 23:19 ` Davide Libenzi
2002-11-20 23:51 ` Mark Mielke
2002-11-20 23:57 ` Davide Libenzi
2002-11-21 0:28 ` Jamie Lokier
2002-11-21 1:23 ` Mark Mielke
2002-11-21 1:20 ` Davide Libenzi
2002-11-21 0:33 ` Mark Mielke
2002-11-21 0:55 ` Jamie Lokier
2002-11-21 1:04 ` Davide Libenzi
2002-11-21 20:08 ` Denis Vlasenko
2002-11-21 16:51 ` Mark Mielke
2002-11-21 17:45 ` Davide Libenzi
2002-11-20 22:04 ` Jamie Lokier
2002-11-20 22:08 ` Davide Libenzi
2002-11-20 23:28 ` Jamie Lokier
2002-11-20 23:33 ` Davide Libenzi
2002-11-20 7:47 ` Mark Mielke [this message]
2002-11-19 3:53 ` Mark Mielke
-- strict thread matches above, loose matches on Subject: below --
2002-11-19 19:33 Grant Taylor
2002-11-19 19:51 ` Davide Libenzi
2002-11-19 20:57 ` Mark Mielke
2002-11-19 20:54 ` Davide Libenzi
2002-11-19 17:28 Dan Kegel
2002-11-19 5:49 Grant Taylor
2002-11-19 6:22 ` Mark Mielke
2002-11-19 15:24 ` Jamie Lokier
[not found] <20021118223125.GB14649@mark.mielke.cc>
2002-11-19 0:23 ` Grant Taylor
2002-11-19 3:58 ` Davide Libenzi
2002-11-19 4:04 ` Mark Mielke
2002-11-18 22:04 Grant Taylor
2002-11-18 22:32 ` Mark Mielke
2002-11-18 23:07 ` Davide Libenzi
2002-11-18 18:40 Grant Taylor
2002-11-18 16:05 Davide Libenzi
2002-11-18 16:12 ` Jakub Jelinek
2002-11-18 16:15 ` Davide Libenzi
2002-11-18 16:18 ` Jakub Jelinek
2002-11-18 16:32 ` Davide Libenzi
2002-11-18 22:22 ` Matthew D. Hall
2002-11-18 17:51 ` Mark Mielke
2002-11-18 18:37 ` Davide Libenzi
2002-11-18 19:59 ` Ulrich Drepper
2002-11-18 21:31 ` Davide Libenzi
2002-11-18 22:56 ` Jamie Lokier
2002-11-18 23:56 ` Davide Libenzi
2002-11-19 1:34 ` Jamie Lokier
2002-11-19 1:50 ` Davide Libenzi
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20021120074732.GA26018@mark.mielke.cc \
--to=mark@mark.mielke.cc \
--cc=davidel@xmailserver.org \
--cc=drepper@redhat.com \
--cc=froese@gmx.de \
--cc=linux-kernel@vger.kernel.org \
--cc=lk@tantalophile.demon.co.uk \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox