Re: WARNING in __kernel_read (2)

From: Eric Biggers
Date: Mon Sep 28 2020 - 19:30:42 EST


On Sat, Sep 26, 2020 at 01:17:04PM +0000, David Laight wrote:
> From: David Laight
> > Sent: 26 September 2020 12:16
> > To: 'syzbot' <syzbot+51177e4144d764827c45@xxxxxxxxxxxxxxxxxxxxxxxxx>; linux-fsdevel@xxxxxxxxxxxxxxx;
> > linux-kernel@xxxxxxxxxxxxxxx; syzkaller-bugs@xxxxxxxxxxxxxxxx; viro@xxxxxxxxxxxxxxxxxx
> > Subject: RE: WARNING in __kernel_read (2)
> >
> > > From: syzbot <syzbot+51177e4144d764827c45@xxxxxxxxxxxxxxxxxxxxxxxxx>
> > > Sent: 26 September 2020 03:58
> > > To: linux-fsdevel@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; syzkaller-bugs@xxxxxxxxxxxxxxxx;
> > > viro@xxxxxxxxxxxxxxxxxx
> > > Subject: WARNING in __kernel_read (2)
> >
> > I suspect this is calling finit_module() on an fd
> > that doesn't have read permissions.
>
> Code inspection also seems to imply that the check means
> the exec() also requires read permissions on the file.
>
> This isn't traditionally true.
> suid #! scripts are particularly odd without 'owner read'
> (everyone except the owner can run them!).

Christoph, any thoughts here? You added this WARN_ON_ONCE in:

commit 61a707c543e2afe3aa7e88f87267c5dafa4b5afa
Author: Christoph Hellwig <hch@xxxxxx>
Date: Fri May 8 08:54:16 2020 +0200

fs: add a __kernel_read helper