Re: VFS/fcntl() feature [PATCH]

Jamie Lokier (lkd@tantalophile.demon.co.uk)
Sat, 29 Aug 1998 15:49:05 +0100


Stephen C. Tweedie wrote:
> May I suggest that instead of a completely new API, you consider
> extending the existing FASYNC and poll() functionality to cover regular
> files and directories? There's no reason why the existing APIs can't
> deal with these cases, and with F_SETSIG, we also have a convenient way
> of letting the user find out exactly what happened when the signal
> arrives.

For FASYNC, I think we'd need another ioctl to say "if this
directory/file is modified, or this directory's inodes are modified,
that now counts as pending I/O for SIGIO purposes".

I do think poll() is the ideal place to add the extended functionality,
not select(), as poll() has scope for new types of events to be added.
Also, programs which use this mechanism would like to know at compile
time if it's supported. Relying on unusual behaviour of select() on
directories would mean these programs compile fine on other OSes or even
older versions of Linux, but don't work properly.

Perhaps both these things could be combined, so the flags passed to
poll() indicating interest in certain conditions are the same conditions
& flags passed to fcntl() to request a signal.

-- Jamie

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.altern.org/andrebalsa/doc/lkml-faq.html