nvme: make nvme_add_ns{_head}_cdev return void

The return code from nvme_add_ns_head_cdev() and nvme_add_ns_cdev() is
never checked, so make those functions return void.

A cdev add failure is tolerated during initialization, and flags
NVME_NS_CDEV_LIVE and NVME_NSHEAD_CDEV_LIVE are for determining whether
a cdev needs to be deleted during un-initialization.

Reviewed-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Hannes Reinecke <hare@kernel.org>
Signed-off-by: John Garry <john.g.garry@oracle.com>
Signed-off-by: Keith Busch <kbusch@kernel.org>
This commit is contained in:
John Garry 2026-06-10 11:16:08 +00:00 committed by Keith Busch
parent ac48c49116
commit 869567bcbe
2 changed files with 10 additions and 16 deletions

View File

@ -3943,24 +3943,21 @@ static const struct file_operations nvme_ns_chr_fops = {
.uring_cmd_iopoll = nvme_ns_chr_uring_cmd_iopoll,
};
static int nvme_add_ns_cdev(struct nvme_ns *ns)
static void nvme_add_ns_cdev(struct nvme_ns *ns)
{
int ret;
char name[32];
ns->cdev_device.parent = ns->ctrl->device;
snprintf(name, sizeof(name), "ng%dn%d", ns->ctrl->instance,
ns->head->instance);
ret = nvme_cdev_add(name, &ns->cdev, &ns->cdev_device,
&nvme_ns_chr_fops, ns->ctrl->ops->module);
if (ret) {
if (nvme_cdev_add(name, &ns->cdev, &ns->cdev_device,
&nvme_ns_chr_fops, ns->ctrl->ops->module)) {
dev_err(ns->ctrl->device, "Unable to create the %s device\n",
name);
} else {
set_bit(NVME_NS_CDEV_LIVE, &ns->flags);
return;
}
return ret;
set_bit(NVME_NS_CDEV_LIVE, &ns->flags);
}
static struct nvme_ns_head *nvme_alloc_ns_head(struct nvme_ctrl *ctrl,

View File

@ -639,24 +639,21 @@ static const struct file_operations nvme_ns_head_chr_fops = {
.uring_cmd_iopoll = nvme_ns_chr_uring_cmd_iopoll,
};
static int nvme_add_ns_head_cdev(struct nvme_ns_head *head)
static void nvme_add_ns_head_cdev(struct nvme_ns_head *head)
{
int ret;
char name[32];
head->cdev_device.parent = &head->subsys->dev;
snprintf(name, sizeof(name), "ng%dn%d", head->subsys->instance,
head->instance);
ret = nvme_cdev_add(name, &head->cdev, &head->cdev_device,
&nvme_ns_head_chr_fops, THIS_MODULE);
if (ret) {
if (nvme_cdev_add(name, &head->cdev, &head->cdev_device,
&nvme_ns_head_chr_fops, THIS_MODULE)) {
dev_err(disk_to_dev(head->disk),
"Unable to create the %s device\n", name);
} else {
set_bit(NVME_NSHEAD_CDEV_LIVE, &head->flags);
return;
}
return ret;
set_bit(NVME_NSHEAD_CDEV_LIVE, &head->flags);
}
static void nvme_partition_scan_work(struct work_struct *work)