All of lore.kernel.org
 help / color / mirror / Atom feed
From: Damien Le Moal <Damien.LeMoal@wdc.com>
To: Chaitanya Kulkarni <Chaitanya.Kulkarni@wdc.com>,
	"axboe@kernel.dk" <axboe@kernel.dk>
Cc: "linux-block@vger.kernel.org" <linux-block@vger.kernel.org>
Subject: Re: [PATCH 1/2] null_blk: return error for invalid zone size
Date: Thu, 21 May 2020 02:19:03 +0000	[thread overview]
Message-ID: <BY5PR04MB69003201220D4DFADC4B0A12E7B70@BY5PR04MB6900.namprd04.prod.outlook.com> (raw)
In-Reply-To: 20200520230152.36120-2-chaitanya.kulkarni@wdc.com

On 2020/05/21 8:02, Chaitanya Kulkarni wrote:
> In null_init_zone_dev() check if the zone size is larger than device
> capacity, return error if needed.
> 
> This also fixes the following oops :-
> 
> null_blk: changed the number of conventional zones to 4294967295
> BUG: kernel NULL pointer dereference, address: 0000000000000010
> PGD 7d76c5067 P4D 7d76c5067 PUD 7d240c067 PMD 0
> Oops: 0002 [#1] SMP NOPTI
> CPU: 4 PID: 5508 Comm: nullbtests.sh Tainted: G OE 5.7.0-rc4lblk-fnext0
> Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.12.0-59-gc9ba5276e4
> RIP: 0010:null_init_zoned_dev+0x17a/0x27f [null_blk]
> RSP: 0018:ffffc90007007e00 EFLAGS: 00010246
> RAX: 0000000000000020 RBX: ffff8887fb3f3c00 RCX: 0000000000000007
> RDX: 0000000000000000 RSI: ffff8887ca09d688 RDI: ffff888810fea510
> RBP: 0000000000000010 R08: ffff8887ca09d688 R09: 0000000000000000
> R10: 0000000000000000 R11: 0000000000000000 R12: ffff8887c26e8000
> R13: ffffffffa05e9390 R14: 0000000000000000 R15: 0000000000000001
> FS:  00007fcb5256f740(0000) GS:ffff888810e00000(0000) knlGS:0000000000000000
> CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
> CR2: 0000000000000010 CR3: 000000081e8fe000 CR4: 00000000003406e0
> Call Trace:
>  null_add_dev+0x534/0x71b [null_blk]
>  nullb_device_power_store.cold.41+0x8/0x2e [null_blk]
>  configfs_write_file+0xe6/0x150
>  vfs_write+0xba/0x1e0
>  ksys_write+0x5f/0xe0
>  do_syscall_64+0x60/0x250
>  entry_SYSCALL_64_after_hwframe+0x49/0xb3
> RIP: 0033:0x7fcb51c71840
> 
> Signed-off-by: Chaitanya Kulkarni <chaitanya.kulkarni@wdc.com>

Looks good.

Reviewed-by: Damien Le Moal <damien.lemoal@wdc.com>

> ---
>  drivers/block/null_blk_zoned.c | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/drivers/block/null_blk_zoned.c b/drivers/block/null_blk_zoned.c
> index 9c19f747f394..cc47606d8ffe 100644
> --- a/drivers/block/null_blk_zoned.c
> +++ b/drivers/block/null_blk_zoned.c
> @@ -23,6 +23,10 @@ int null_init_zoned_dev(struct nullb_device *dev, struct request_queue *q)
>  		pr_err("zone_size must be power-of-two\n");
>  		return -EINVAL;
>  	}
> +	if (dev->zone_size > dev->size) {
> +		pr_err("Zone size larger than device capacity\n");
> +		return -EINVAL;
> +	}
>  
>  	dev->zone_size_sects = dev->zone_size << ZONE_SIZE_SHIFT;
>  	dev->nr_zones = dev_size >>
> 


-- 
Damien Le Moal
Western Digital Research

  reply	other threads:[~2020-05-21  2:19 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-05-20 23:01 [PATCH 0/2]null_blk: small fixes for zoned mode Chaitanya Kulkarni
2020-05-20 23:01 ` [PATCH 1/2] null_blk: return error for invalid zone size Chaitanya Kulkarni
2020-05-21  2:19   ` Damien Le Moal [this message]
2020-05-20 23:01 ` [PATCH 2/2] null_blk: don't allow discard for zoned mode Chaitanya Kulkarni
2020-05-21 14:47 ` [PATCH 0/2]null_blk: small fixes " Jens Axboe

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=BY5PR04MB69003201220D4DFADC4B0A12E7B70@BY5PR04MB6900.namprd04.prod.outlook.com \
    --to=damien.lemoal@wdc.com \
    --cc=Chaitanya.Kulkarni@wdc.com \
    --cc=axboe@kernel.dk \
    --cc=linux-block@vger.kernel.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.