[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20190130112306.GA28528@kroah.com>
Date: Wed, 30 Jan 2019 12:23:06 +0100
From: Greg Kroah-Hartman <gregkh@...uxfoundation.org>
To: Tetsuo Handa <penguin-kernel@...ove.sakura.ne.jp>
Cc: Omar Sandoval <osandov@...com>,
syzbot <syzbot+b382ba6a802a3d242790@...kaller.appspotmail.com>,
linux-fsdevel@...r.kernel.org, linux-kernel@...r.kernel.org,
syzkaller-bugs@...glegroups.com, viro@...iv.linux.org.uk,
Jens Axboe <axboe@...com>
Subject: Re: BUG: unable to handle kernel paging request in dput (2)
On Wed, Jan 30, 2019 at 08:11:17PM +0900, Tetsuo Handa wrote:
> Hello, Omar.
>
> syzbot is reporting a crash due to dput(-EINVAL) [1]. I think the location is
>
> dir = debugfs_lookup(buts->name, blk_debugfs_root);
> if (!dir)
> bt->dir = dir = debugfs_create_dir(buts->name, blk_debugfs_root);
>
> added by commit 6ac93117ab009d39 ("blktrace: use existing disk debugfs directory").
>
> Currently, Greg Kroah-Hartman is posting patches:
>
> When calling debugfs functions, there is no need to ever check the
> return value. The function can work or not, but the code logic should
> never do something different based on this.
>
> Omar, what do you want to do for this case?
>
> [1] https://syzkaller.appspot.com/bug?extid=b382ba6a802a3d242790
>
Obviously debugfs_lookup() should have its return value checked, so
that's fine :)
But how are we getting an error with dput()? Are you sure this is a
debugfs issue and not a relayfs problem?
I'll send patches to clean up the tracing code's use of debugfs later,
as it is, I don't see anything obviously wrong with it.
thanks,
greg k-h
Powered by blists - more mailing lists