linux-fsdevel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Duncan Roe <duncan_roe@optusnet.com.au>
To: Dmitry Vyukov <dvyukov@google.com>
Cc: Al Viro <viro@zeniv.linux.org.uk>,
	Chris Metcalf <cmetcalf@ezchip.com>,
	coreteam@netfilter.org, David Miller <davem@davemloft.net>,
	Chen Gang <gang.chen.5i5j@gmail.com>,
	Patrick McHardy <kaber@trash.net>,
	Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>,
	linux-fsdevel <linux-fsdevel@vger.kernel.org>,
	LKML <linux-kernel@vger.kernel.org>,
	netdev <netdev@vger.kernel.org>,
	NetFilter <netfilter-devel@vger.kernel.org>,
	Pablo Neira Ayuso <pablo@netfilter.org>,
	syzkaller-bugs <syzkaller-bugs@googlegroups.com>
Subject: Re: KASAN: use-after-free Read in blkdev_get
Date: Sun, 1 Dec 2019 11:04:39 +1100	[thread overview]
Message-ID: <20191201000439.GA15496@dimstar.local.net> (raw)
In-Reply-To: <CACT4Y+bg7bZOSg0P9VXq8yG2odAJMg6b6N2fXxbamOmKiz3ohw@mail.gmail.com>

On Sat, Nov 30, 2019 at 04:53:12PM +0100, Dmitry Vyukov wrote:
> On Sat, Nov 30, 2019 at 12:06 PM Duncan Roe <duncan_roe@optusnet.com.au> wrote:
> > > > syzbot has bisected this bug to:
> > > >
> > > > commit 77ef8f5177599efd0cedeb52c1950c1bd73fa5e3
> > > > Author: Chris Metcalf <cmetcalf@ezchip.com>
> > > > Date:   Mon Jan 25 20:05:34 2016 +0000
> > > >
> > > >     tile kgdb: fix bug in copy to gdb regs, and optimize memset
> > > >
> > > > bisection log:  https://syzkaller.appspot.com/x/bisect.txt?x=1131bc0ee00000
> > > > start commit:   f5b7769e Revert "debugfs: inode: debugfs_create_dir uses m..
> > > > git tree:       upstream
> > > > final crash:    https://syzkaller.appspot.com/x/report.txt?x=1331bc0ee00000
> > > > console output: https://syzkaller.appspot.com/x/log.txt?x=1531bc0ee00000
> > > > kernel config:  https://syzkaller.appspot.com/x/.config?x=709f8187af941e84
> > > > dashboard link: https://syzkaller.appspot.com/bug?extid=eaeb616d85c9a0afec7d
> > > > syz repro:      https://syzkaller.appspot.com/x/repro.syz?x=177f898f800000
> > > > C reproducer:   https://syzkaller.appspot.com/x/repro.c?x=147eb85f800000
> > > >
> > > > Reported-by: syzbot+eaeb616d85c9a0afec7d@syzkaller.appspotmail.com
> > > > Fixes: 77ef8f517759 ("tile kgdb: fix bug in copy to gdb regs, and optimize
> > > > memset")
> > > >
> > > > For information about bisection process see: https://goo.gl/tpsmEJ#bisection
> > >
> > > Seriously?  How can the commit in question (limited to arch/tile/kernel/kgdb.c)
> > > possibly affect a bug that manages to produce a crash report with
> > > RSP: 0018:ffffffff82e03eb8  EFLAGS: 00000282
> > > RAX: 0000000000000000 RBX: ffffffff82e00000 RCX: 0000000000000000
> > > RDX: 0000000000000000 RSI: 0000000000000000 RDI: ffffffff81088779
> > > RBP: ffffffff82e03eb8 R08: 0000000000000000 R09: 0000000000000001
> > > R10: 0000000000000000 R11: 0000000000000000 R12: 0000000000000000
> > > R13: 0000000000000000 R14: 0000000000000000 R15: ffffffff82e00000
> > > FS:  0000000000000000(0000) GS:ffff88021fc00000(0000) knlGS:0000000000000000
> > > CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
> > > CR2: 000000c420447ff8 CR3: 0000000213184000 CR4: 00000000001406f0
> > > DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
> > > DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
> > > in it?  Unless something very odd has happened to tile, this crash has
> > > been observed on 64bit x86; the names of registers alone are enough
> > > to be certain of that.
> > >
> > > And the binaries produced by an x86 build should not be affected by any
> > > changes in arch/tile; not unless something is very wrong with the build
> > > system.  It's not even that this commit has fixed an earlier bug that
> > > used to mask the one manifested here - it really should have had zero
> > > impact on x86 builds, period.
> > >
> > > So I'm sorry, but I'm calling bullshit.  Something's quite wrong with
> > > the bot - either its build system or the bisection process.
> >
> > The acid test would be: does reverting that commit make the problem go away?
> >
> > See, for example, https://bugzilla.kernel.org/show_bug.cgi?id=203935
> >
> > Cheers ... Duncan.
>
> This is done as part of any bisection by definition, right? The test
> was done on the previous commit (effectively this one reverted) and no
> crash was observed. Otherwise bisection would have been pointed to a
> different commit.
>
Agree that's what bisecting does. What I had in mind was to make a patch to
remove the identified commit, and apply that to the most recent revision
possible. Then see if that makes the problem go away.

However when I look at my clone of
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git and compare
77ef8f5177 with the previous commit a7d1357664, "git diff --stat" shows

> 745 files changed, 8192 insertions(+), 15408 deletions(-)

The last few lines from a grep of "arch" are:

> arch/s390/oprofile/backtrace.c                     |    8 +-
> arch/tile/kernel/kgdb.c                            |    8 +-
> arch/x86/Kconfig                                   |    5 +-
> arch/x86/include/asm/livepatch.h                   |    2 +-
> arch/x86/include/asm/processor.h                   |    2 +-
> arch/x86/kernel/cpu/perf_event_amd_uncore.c        |    2 +
> arch/x86/lib/copy_user_64.S                        |  142 ++-
> arch/x86/mm/fault.c                                |   15 +-
> arch/x86/mm/gup.c                                  |    2 +-
> arch/x86/mm/numa.c                                 |    2 +-

Enough said?

Cheers ... Duncan.

  reply	other threads:[~2019-12-01  0:11 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-06-13 16:27 KASAN: use-after-free Read in blkdev_get syzbot
2018-12-05 19:50 ` Dmitry Vyukov
2019-11-24 19:07 ` syzbot
2019-11-24 19:30   ` Al Viro
2019-11-30 11:06     ` Duncan Roe
2019-11-30 15:53       ` Dmitry Vyukov
2019-12-01  0:04         ` Duncan Roe [this message]
2019-12-02  6:47           ` Dmitry Vyukov
2019-12-02  9:31             ` Duncan Roe

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=20191201000439.GA15496@dimstar.local.net \
    --to=duncan_roe@optusnet.com.au \
    --cc=cmetcalf@ezchip.com \
    --cc=coreteam@netfilter.org \
    --cc=davem@davemloft.net \
    --cc=dvyukov@google.com \
    --cc=gang.chen.5i5j@gmail.com \
    --cc=kaber@trash.net \
    --cc=kadlec@blackhole.kfki.hu \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=netfilter-devel@vger.kernel.org \
    --cc=pablo@netfilter.org \
    --cc=syzkaller-bugs@googlegroups.com \
    --cc=viro@zeniv.linux.org.uk \
    /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;
as well as URLs for NNTP newsgroup(s).