Skip to content

Commit

Permalink
null_blk: validate the number of devices
Browse files Browse the repository at this point in the history
A negative number of devices is nonsensical, so change the type to
unsigned. If the number of devices is 0, it is impossible for userspace
to interact with the module, so refuse loading the driver for that case.

Signed-off-by: André Almeida <[email protected]>
Signed-off-by: Jens Axboe <[email protected]>
  • Loading branch information
andrealmeid authored and axboe committed Sep 11, 2019
1 parent 4e47ee8 commit f7c4ce8
Showing 1 changed file with 5 additions and 1 deletion.
6 changes: 5 additions & 1 deletion drivers/block/null_blk_main.c
Original file line number Diff line number Diff line change
Expand Up @@ -141,7 +141,7 @@ static int g_bs = 512;
module_param_named(bs, g_bs, int, 0444);
MODULE_PARM_DESC(bs, "Block size (in bytes)");

static int nr_devices = 1;
static unsigned int nr_devices = 1;
module_param(nr_devices, int, 0444);
MODULE_PARM_DESC(nr_devices, "Number of devices to register");

Expand Down Expand Up @@ -1767,6 +1767,10 @@ static int __init null_init(void)
pr_err("null_blk: legacy IO path no longer available\n");
return -EINVAL;
}
if (!nr_devices) {
pr_err("null_blk: invalid number of devices\n");
return -EINVAL;
}
if (g_queue_mode == NULL_Q_MQ && g_use_per_node_hctx) {
if (g_submit_queues != nr_online_nodes) {
pr_warn("null_blk: submit_queues param is set to %u.\n",
Expand Down

0 comments on commit f7c4ce8

Please sign in to comment.