From: Colin Ian King <colin.king@xxxxxxxxxxxxx> Currently when the call to sysfs_create_link fails the error exit path returns an uninitialized value in variable ret. Fix this by returning the error code returned from the failed call to sysfs_create_link. Addresses-Coverity: ("Uninitialized scalar variable") Fixes: 32fd90c40768 ("nvme: change locking for the per-subsystem controller list") Signed-off-by: Colin Ian King <colin.king@xxxxxxxxxxxxx> --- drivers/nvme/host/core.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/drivers/nvme/host/core.c b/drivers/nvme/host/core.c index 63b37d08ac98..f6acbff3e3bc 100644 --- a/drivers/nvme/host/core.c +++ b/drivers/nvme/host/core.c @@ -2540,8 +2540,9 @@ static int nvme_init_subsystem(struct nvme_ctrl *ctrl, struct nvme_id_ctrl *id) list_add_tail(&subsys->entry, &nvme_subsystems); } - if (sysfs_create_link(&subsys->dev.kobj, &ctrl->device->kobj, - dev_name(ctrl->device))) { + ret = sysfs_create_link(&subsys->dev.kobj, &ctrl->device->kobj, + dev_name(ctrl->device)); + if (ret) { dev_err(ctrl->device, "failed to create sysfs link from subsystem.\n"); goto out_put_subsystem; -- 2.20.1