Re: [git pull] vfs.git pile 11

From: Al Viro
Date: Thu Jul 06 2017 - 16:29:38 EST


On Thu, Jul 06, 2017 at 09:18:26PM +0100, Al Viro wrote:
> On Thu, Jul 06, 2017 at 12:45:36PM -0700, Kees Cook wrote:
> >
> > + if (unlikely(!check_copy_size(addr, bytes, false)))
> > + return false;
> > + else
> > + return _copy_from_iter_full(addr, bytes, i);
> >
> > Can these be rewritten to avoid the double-negative?
>
> Matter of taste - I've no strong preferences here.
>
> > + might_fault();
> >
> > Should this be might_sleep()? Just from reading the patch it looked
> > like you were adding might_sleep()s in the other cases.
>
> D'oh - shouldn't have written that pull request message before the
> first cup of coffee... might_sleep() it is, of course.

Hrm... Said that, might_sleep() doesn't check one thing might_fault()
does - the
#if defined(CONFIG_DEBUG_ATOMIC_SLEEP)
if (current->mm)
might_lock_read(&current->mm->mmap_sem);
#endif
thing. Let me think a bit...