From 20a26ca89e7175b9dc1f9e1454585a4a5b6aac95 Mon Sep 17 00:00:00 2001 From: Bart Van Assche Date: Tue, 13 Oct 2026 15:10:07 -0700 Subject: [PATCH] scsi: scsi_debug: Split resp_atomic_write() Prepare for enabling lock context analysis by eliminating conditional locking. Reviewed-by: Christoph Hellwig Signed-off-by: Bart Van Assche Link: https://patch.msgid.link/bd623851c07c80b3f1bff493e66dc268656e9883.1791924924.git.bvanassche@acm.org Signed-off-by: Martin K. Petersen (Oracle) --- drivers/scsi/scsi_debug.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/drivers/scsi/scsi_debug.c b/drivers/scsi/scsi_debug.c index 98e4ffaa8b06..cfe6bd154e8d 100644 --- a/drivers/scsi/scsi_debug.c +++ b/drivers/scsi/scsi_debug.c @@ -6352,16 +6352,16 @@ static int resp_atomic_write(struct scsi_cmnd *scp, if (scsi_bufflen(scp) < len * sdebug_sector_size) return DID_ERROR << 16; - if (lbp) - sdeb_meta_write_lock(sip); - - ret = do_device_access(sip, scp, 0, lba, len, 0, true, true); if (lbp) { + sdeb_meta_write_lock(sip); + ret = do_device_access(sip, scp, 0, lba, len, 0, true, true); map_region(sip, lba, len); sdeb_meta_write_unlock(sip); + } else { + ret = do_device_access(sip, scp, 0, lba, len, 0, true, true); } - if (unlikely(ret == -1)) + if (unlikely(ret < 0)) return DID_ERROR << 16; if (unlikely(ret != len * sdebug_sector_size)) return DID_ERROR << 16;