From: Julian Ruess <julianr@linux.ibm.com>
To: Yu Kuai <yukuai1@huaweicloud.com>,
Alexander Egorenkov <egorenar@linux.ibm.com>,
syzbot+2bcc0d79e548c4f62a59@syzkaller.appspotmail.com
Cc: axboe@kernel.dk, linux-block@vger.kernel.org,
linux-kernel@vger.kernel.org, syzkaller-bugs@googlegroups.com,
jack@suse.cz, hch@lst.de,
Niklas Schnelle <schnelle@linux.ibm.com>,
Gerd Bayer <gbayer@linux.ibm.com>,
"yukuai (C)" <yukuai3@huawei.com>,
julianr@linux.ibm.com
Subject: Re: [syzbot] [block?] WARNING in blkdev_put (2)
Date: Tue, 07 Mar 2023 10:19:35 +0100 [thread overview]
Message-ID: <a3a4351375d51aa5e93e06bba212ba3637665885.camel@linux.ibm.com> (raw)
In-Reply-To: <26079e08-857d-6216-0921-bdef369f3316@huaweicloud.com>
On Tue, 2023-03-07 at 09:42 +0800, Yu Kuai wrote:
> Hi,
>
> 在 2023/03/06 23:00, Julian Ruess 写道:
> > On Thu, 2023-03-02 at 20:33 +0100, Alexander Egorenkov wrote:
> > >
> > > Hi,
> > >
> > > we are seeing a similar problem on s390x architecture when
> > > partitioning
> > > a NVMe disk on linux-next.
> > >
> > >
> > > [ 70.403015] nvme0n1: p1
> > > [ 70.403197] ------------[ cut here ]------------
> > > [ 70.403199] WARNING: CPU: 8 PID: 2452 at block/bdev.c:845
> > > blkdev_put+0x280/0x298
> >
> > ...
> >
> > > The problem appeared about a week ago.
> > >
> > > Regards
> > > Alex
> >
> > Hi all,
> >
> > I bisected this to:
> >
> > commit e5cfefa97bccf956ea0bb6464c1f6c84fd7a8d9f
> > Author: Yu Kuai <yukuai3@huawei.com>
> > Date: Fri Feb 17 10:22:00 2023 +0800
> >
> >
> > block: fix scan partition for exclusively open device again
>
> Yes, thanks for the report, I figure out that I made a mistake here.
>
> Following patch should fix this problem:
>
> diff --git a/block/genhd.c b/block/genhd.c
> index 3ee5577e1586..02d9cfb9e077 100644
> --- a/block/genhd.c
> +++ b/block/genhd.c
> @@ -385,7 +385,7 @@ int disk_scan_partitions(struct gendisk *disk,
> fmode_t mode)
> if (IS_ERR(bdev))
> ret = PTR_ERR(bdev);
> else
> - blkdev_put(bdev, mode);
> + blkdev_put(bdev, mode & ~FMODE_EXCL);
>
> Thanks,
> Kuai
> >
> >
> > As explained in commit 36369f46e917 ("block: Do not reread
> > partition table
> > on exclusively open device"), reread partition on the device
> > that
> > is
> > exclusively opened by someone else is problematic.
> >
> >
> > This patch will make sure partition scan will only be proceed
> > if
> > current
> > thread open the device exclusively, or the device is not
> > opened
> > exclusively, and in the later case, other scanners and
> > exclusive
> > openers
> > will be blocked temporarily until partition scan is done.
> >
> >
> > Fixes: 10c70d95c0f2 ("block: remove the bd_openers checks in
> > blk_drop_partitions")
> > Cc: <stable@vger.kernel.org>
> > Suggested-by: Jan Kara <jack@suse.cz>
> > Signed-off-by: Yu Kuai <yukuai3@huawei.com>
> > Reviewed-by: Christoph Hellwig <hch@lst.de>
> > Link:
> > https://lore.kernel.org/r/20230217022200.3092987-3-yukuai1@huaweicloud.com
> >
> > Signed-off-by: Jens Axboe <axboe@kernel.dk>
> >
> >
> >
> > Regards
> > Julian
> >
>
This patch works for me. Thanks!
@Jens Axboe: Will this be part of the next 6.3-rc?
Regards
Julian
next prev parent reply other threads:[~2023-03-07 9:20 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-02-24 7:25 syzbot
2023-03-02 19:33 ` Alexander Egorenkov
2023-03-06 15:00 ` Julian Ruess
2023-03-07 1:42 ` Yu Kuai
2023-03-07 9:19 ` Julian Ruess [this message]
2023-03-07 10:55 ` [PATCH] block: fix wrong mode for blkdev_put() from disk_scan_partitions() Yu Kuai
2023-03-07 13:12 ` Jan Kara
2023-03-07 14:25 ` Jens Axboe
[not found] <20230303015934.2578-1-hdanton@sina.com>
2023-03-03 2:14 ` [syzbot] [block?] WARNING in blkdev_put (2) syzbot
[not found] <20230303023229.2635-1-hdanton@sina.com>
2023-03-03 3:03 ` syzbot
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=a3a4351375d51aa5e93e06bba212ba3637665885.camel@linux.ibm.com \
--to=julianr@linux.ibm.com \
--cc=axboe@kernel.dk \
--cc=egorenar@linux.ibm.com \
--cc=gbayer@linux.ibm.com \
--cc=hch@lst.de \
--cc=jack@suse.cz \
--cc=linux-block@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=schnelle@linux.ibm.com \
--cc=syzbot+2bcc0d79e548c4f62a59@syzkaller.appspotmail.com \
--cc=syzkaller-bugs@googlegroups.com \
--cc=yukuai1@huaweicloud.com \
--cc=yukuai3@huawei.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
all inboxes | Powered by JetHome®