From: "Theodore Y. Ts'o" <tytso@mit.edu>
To: Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>
Cc: syzbot <syzbot+bf89c128e05dd6c62523@syzkaller.appspotmail.com>,
Jens Axboe <axboe@kernel.dk>,
syzkaller-bugs <syzkaller-bugs@googlegroups.com>,
Jan Kara <jack@suse.cz>, Milan Broz <gmazyland@gmail.com>,
Dmitry Vyukov <dvyukov@google.com>,
linux-block@vger.kernel.org, LKML <linux-kernel@vger.kernel.org>
Subject: Re: general protection fault in lo_ioctl (2)
Date: Tue, 8 May 2018 08:37:30 -0400 [thread overview]
Message-ID: <20180508123730.GH999@thunk.org> (raw)
In-Reply-To: <4d91224a-ecba-3696-1116-3da2e48ec4d3@I-love.SAKURA.ne.jp>
On Tue, May 08, 2018 at 08:05:12PM +0900, Tetsuo Handa wrote:
>
> So, it is time to think how to solve this race condition, as well as how to solve
> lockdep's deadlock warning (and I guess that syzbot is actually hitting deadlocks).
> An approach which serializes loop operations using global lock was proposed at
> https://groups.google.com/d/msg/syzkaller-bugs/2Rw8-OM6IbM/PzdobV8kAgAJ .
> Please respond...
I'm looking at your patch which you proposed on this, and the locking
architecture still looks way too complex. Things like
loop_mutex_owner, and all of the infrastructure around
lo->ioctl_in_progress should be removed, if at all possible.
I believe it should be possible to do things with a single global
mutex, some code refactoring, and some unlocked versions of some of
the functions.
Again, this requires root, and it requires someone deliberately trying
to induce a race. So "it's time" is not necessarily the priority I
would set for this item. But if we are going to fix it, let's fix it
right, and not make the code more complex and less maintainable, all
in the name of trying to make a rare, not-likely-to-happen-in-real-life
syzbot reported problem to go away.
Cheers,
- Ted
next prev parent reply other threads:[~2018-05-08 12:37 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-05-02 7:33 general protection fault in lo_ioctl (2) syzbot
2018-05-02 11:23 ` Dmitry Vyukov
2018-05-07 20:56 ` Tetsuo Handa
2018-05-08 11:05 ` Tetsuo Handa
2018-05-08 12:37 ` Theodore Y. Ts'o [this message]
2018-05-08 21:06 ` Tetsuo Handa
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20180508123730.GH999@thunk.org \
--to=tytso@mit.edu \
--cc=axboe@kernel.dk \
--cc=dvyukov@google.com \
--cc=gmazyland@gmail.com \
--cc=jack@suse.cz \
--cc=linux-block@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=penguin-kernel@I-love.SAKURA.ne.jp \
--cc=syzbot+bf89c128e05dd6c62523@syzkaller.appspotmail.com \
--cc=syzkaller-bugs@googlegroups.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox