You're absolutely right. My patch is aggressive. It does things that would
require buy-in by a lot of people. Your patch is much safer.
But I doubt very much that SIGIO style readiness notification will ever
be used with files. aio_{read,write} style completion notification is
much more appropriate for file I/O, and my proposal (if I make it) will not
affect that.
> Keeping pointer allows for additional sanity check to make sure I'm not screwed,
That's a good thing, yes.
> and cheap update events information in siginfo.
> Keeping interests strips you of this ability. And also, you have to have
> additional method of gettong events information in user space, because you
> are not updating siginfo, and cannot rely on it anymore.
I disagree there. My patch's updates are just as cheap as yours, and
programs which use si_band instead of si_code are potentially unaffected by my
patch; it's possible to write programs that work identically with or without
my patch. (My Poller_sigio.cc is such a program.)
> So, to utilize signal per fd feature you have to modify
> event loop and not file descriptor setup, which I'd also try to avoid.
Agreed. It is messy to have to go out and 'fix' existing programs to
be compatible with a proposed interface change like this. You are absolutely
right to avoid the kind of change I made.
On the other hand, my change might in the long run yield both a simpler
kernel and simpler userland programs. That's the only reason I am playing
with this approch. I'm not seriously proposing it as yet. I only posted it
so you could see how I addressed the first two kinds of oops'es; the fixes
should be similar in your patch.
Thanks again for creating and maintaining your patch! I look forward to
stress-testing the next version.
- Dan
-
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/