From: Caleb Sander Mateos <csander@purestorage.com>
To: Ming Lei <ming.lei@redhat.com>, Jens Axboe <axboe@kernel.dk>
Cc: Govindarajulu Varadarajan <govind.varadar@gmail.com>,
linux-block@vger.kernel.org, linux-kernel@vger.kernel.org,
Caleb Sander Mateos <csander@purestorage.com>
Subject: [PATCH 4/4] ublk: drop ublk_ctrl_{start,end}_recovery() header argument
Date: Thu, 29 Jan 2026 15:46:17 -0700 [thread overview]
Message-ID: <20260129224618.975401-5-csander@purestorage.com> (raw)
In-Reply-To: <20260129224618.975401-1-csander@purestorage.com>
ublk_ctrl_start_recovery() and ublk_ctrl_end_recovery() only use their
const struct ublksrv_ctrl_cmd *header arguments to log the dev_id. But
this value is already available in struct ublk_device's ub_number field.
So log ub_number instead and drop the unused header arguments.
Signed-off-by: Caleb Sander Mateos <csander@purestorage.com>
---
drivers/block/ublk_drv.c | 18 ++++++++----------
1 file changed, 8 insertions(+), 10 deletions(-)
diff --git a/drivers/block/ublk_drv.c b/drivers/block/ublk_drv.c
index 49510216832f..a0d1285d24d1 100644
--- a/drivers/block/ublk_drv.c
+++ b/drivers/block/ublk_drv.c
@@ -4773,12 +4773,11 @@ static int ublk_ctrl_set_params(struct ublk_device *ub, u64 addr, u16 len)
mutex_unlock(&ub->mutex);
return ret;
}
-static int ublk_ctrl_start_recovery(struct ublk_device *ub,
- const struct ublksrv_ctrl_cmd *header)
+static int ublk_ctrl_start_recovery(struct ublk_device *ub)
{
int ret = -EINVAL;
mutex_lock(&ub->mutex);
if (ublk_nosrv_should_stop_dev(ub))
@@ -4803,31 +4802,30 @@ static int ublk_ctrl_start_recovery(struct ublk_device *ub,
*/
if (test_bit(UB_STATE_OPEN, &ub->state) || !ublk_dev_in_recoverable_state(ub)) {
ret = -EBUSY;
goto out_unlock;
}
- pr_devel("%s: start recovery for dev id %d.\n", __func__, header->dev_id);
+ pr_devel("%s: start recovery for dev id %d\n", __func__, ub->ub_number);
init_completion(&ub->completion);
ret = 0;
out_unlock:
mutex_unlock(&ub->mutex);
return ret;
}
-static int ublk_ctrl_end_recovery(struct ublk_device *ub,
- const struct ublksrv_ctrl_cmd *header, int ublksrv_pid)
+static int ublk_ctrl_end_recovery(struct ublk_device *ub, int ublksrv_pid)
{
int ret = -EINVAL;
pr_devel("%s: Waiting for all FETCH_REQs, dev id %d...\n", __func__,
- header->dev_id);
+ ub->ub_number);
if (wait_for_completion_interruptible(&ub->completion))
return -EINTR;
pr_devel("%s: All FETCH_REQs received, dev id %d\n", __func__,
- header->dev_id);
+ ub->ub_number);
if (ub->ublksrv_tgid != ublksrv_pid)
return -EINVAL;
mutex_lock(&ub->mutex);
@@ -4839,11 +4837,11 @@ static int ublk_ctrl_end_recovery(struct ublk_device *ub,
goto out_unlock;
}
ub->dev_info.ublksrv_pid = ublksrv_pid;
ub->dev_info.state = UBLK_S_DEV_LIVE;
pr_devel("%s: new ublksrv_pid %d, dev id %d\n",
- __func__, ublksrv_pid, header->dev_id);
+ __func__, ublksrv_pid, ub->ub_number);
blk_mq_kick_requeue_list(ub->ub_disk->queue);
ret = 0;
out_unlock:
mutex_unlock(&ub->mutex);
return ret;
@@ -5185,14 +5183,14 @@ static int ublk_ctrl_uring_cmd(struct io_uring_cmd *cmd,
break;
case UBLK_CMD_SET_PARAMS:
ret = ublk_ctrl_set_params(ub, addr, len);
break;
case UBLK_CMD_START_USER_RECOVERY:
- ret = ublk_ctrl_start_recovery(ub, header);
+ ret = ublk_ctrl_start_recovery(ub);
break;
case UBLK_CMD_END_USER_RECOVERY:
- ret = ublk_ctrl_end_recovery(ub, header, data);
+ ret = ublk_ctrl_end_recovery(ub, data);
break;
case UBLK_CMD_UPDATE_SIZE:
ublk_ctrl_set_size(ub, data);
ret = 0;
break;
--
2.45.2
prev parent reply other threads:[~2026-01-29 22:46 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-01-29 22:46 [PATCH 0/4] ublk: fix struct ublksrv_ctrl_cmd accesses Caleb Sander Mateos
2026-01-29 22:46 ` [PATCH 1/4] ublk: Validate SQE128 flag before accessing the cmd Caleb Sander Mateos
2026-01-30 8:03 ` Ming Lei
2026-01-29 22:46 ` [PATCH 2/4] ublk: don't write to struct ublksrv_ctrl_cmd Caleb Sander Mateos
2026-01-30 15:48 ` Ming Lei
2026-01-30 16:05 ` Ming Lei
2026-01-29 22:46 ` [PATCH 3/4] ublk: use READ_ONCE() to read " Caleb Sander Mateos
2026-01-30 15:56 ` Ming Lei
2026-01-29 22:46 ` Caleb Sander Mateos [this message]
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=20260129224618.975401-5-csander@purestorage.com \
--to=csander@purestorage.com \
--cc=axboe@kernel.dk \
--cc=govind.varadar@gmail.com \
--cc=linux-block@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=ming.lei@redhat.com \
/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.