Messages in this thread | | | Date | Mon, 8 Jun 2009 19:50:41 +0100 | From | Al Viro <> | Subject | Re: [PATCH 0/23] File descriptor hot-unplug support v2 |
| |
On Mon, Jun 08, 2009 at 11:01:51AM -0700, Linus Torvalds wrote: > > > On Mon, 8 Jun 2009, Al Viro wrote: > > > > Welcome to reality... > > > > * bread() is non-interruptible > > * so's copy_from_user()/copy_to_user() > > * IO we are stuck upon _might_ be interruptible, but by sending a signal > > to some other process > > We can probably improve on these, though. > > Like the copy_to/from_user thing. We might well be able to do that whole > "if it's a fatal signal, return early" thing. > > So in the _general_ case - no, we probably can't fix things. But we could > likely at least improve in some common cases if we cared.
Sure, even though I'm not at all certain that copy_from_user() is that easy. We can make locking current->mm in there interruptible, all right, but that's only a part of the answer - even aside of the allocations, we'd need vma ->fault() interruptible as well, which leads to interruptible instances of ->readpage(), with all the fun _that_ would be.
| |