[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <d384b565-0be8-461d-ba8c-0185842c9d9c@kernel.dk>
Date: Tue, 14 Jan 2025 07:16:31 -0700
From: Jens Axboe <axboe@...nel.dk>
To: Edward Adam Davis <eadavis@...com>, hare@...e.de
Cc: linux-block@...r.kernel.org, linux-kernel@...r.kernel.org,
syzbot+fcee6b76cf2e261c51a4@...kaller.appspotmail.com,
syzkaller-bugs@...glegroups.com
Subject: Re: [PATCH V2] block: no show partitions if partno corrupted
On 1/14/25 1:51 AM, Edward Adam Davis wrote:
> diff --git a/block/genhd.c b/block/genhd.c
> index 9130e163e191..8d539a4a3b37 100644
> --- a/block/genhd.c
> +++ b/block/genhd.c
> @@ -890,7 +890,9 @@ static int show_partition(struct seq_file *seqf, void *v)
>
> rcu_read_lock();
> xa_for_each(&sgp->part_tbl, idx, part) {
> - if (!bdev_nr_sectors(part))
> + int partno = bdev_partno(part);
> +
> + if (!bdev_nr_sectors(part) || WARN_ON(partno >= DISK_MAX_PARTS))
> continue;
> seq_printf(seqf, "%4d %7d %10llu %pg\n",
> MAJOR(part->bd_dev), MINOR(part->bd_dev),
This should be a WARN_ON_ONCE(), and please put warn-on's on a separate
line.
--
Jens Axboe
Powered by blists - more mailing lists