Blob Blame History Raw
From f3d5ca632676a958cf44bb4a9f62858ad9cc9179 Mon Sep 17 00:00:00 2001
From: David Disseldorp <ddiss@suse.de>
Date: Fri, 2 Oct 2020 15:11:52 +0200
Subject: [PATCH] target/rbd: fix unmap / discard block-size conversion
References: bsc#1177271
Patch-mainline: Not yet, SES clustered LIO/RBD

The current conversion assumes 512 byte blocks.

Signed-off-by: David Disseldorp <ddiss@suse.de>
Reviewed-by: Roman Penyaev <rpenyaev@suse.com>
---
 drivers/target/target_core_rbd.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/target/target_core_rbd.c b/drivers/target/target_core_rbd.c
index d0c2d7ac4975..fb5798d2674c 100644
--- a/drivers/target/target_core_rbd.c
+++ b/drivers/target/target_core_rbd.c
@@ -411,7 +411,8 @@ static sense_reason_t tcm_rbd_execute_unmap(struct se_cmd *cmd,
 	}
 
 	return tcm_rbd_execute_cmd(cmd, rbd_dev, NULL, 0, OBJ_OP_DISCARD,
-				   lba << SECTOR_SHIFT, nolb << SECTOR_SHIFT,
+				   rbd_lba_shift(cmd->se_dev, lba),
+				   rbd_lba_shift(cmd->se_dev, nolb),
 				   true);
 }
 
-- 
2.26.2