Re: [PATCH 0/23] File descriptor hot-unplug support v2

Nick Piggin
2009-06-09T10:53:04Z

On Mon, Jun 08, 2009 at 11:42:53PM -0700, Eric W. Biederman wrote:
> Linus Torvalds <torvalds@linux-foundation.org> writes:
>
> > On Mon, 8 Jun 2009, Al Viro wrote:
> >>
> >> 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.
> >
> > We already have all that - the NFS people wanted it.
> >
> > More importantly, you don't actually need to interrupt readpage itself -
> > you just need to stop _waiting_ on it. So in your fault handler, just stop
> > waiting, and instead just return FAULT_RETRY or whatever.
>
> That sounds doable. Has that code been merged yet?
>
> I took a quick look and it didn't see anyone breaking out of page fault with a
> signal or code to really handle that.

The problem is get_user_pages I think. Now that we have a good number of
fault flags, we can pass down whether the caller is able to be
interrupted or not.

Ben H had some interest in doing this, but I don't know how far he got
with it.