From patchwork Tue Feb 25 04:46:51 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Anuj Gupta X-Patchwork-Id: 13989319 Received: from mailout4.samsung.com (mailout4.samsung.com [203.254.224.34]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 702E72561B0 for ; Tue, 25 Feb 2025 05:12:01 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=203.254.224.34 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740460323; cv=none; b=DZ9QxEY68/QtxXkXM3pAQ8651qW6Ed0XFEQ9JrUYelo003ZQ8qgnLAqbRLd7CCwHL3eZZ4zE1silCv5agk+qGQrGFoXMY16i3nUL33toCJuNJn8JtWJ9csa4jzc+uJKGoqfN/KrWzz7cxK1UgFphOnwsp01Zka1PfLiejVr999M= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740460323; c=relaxed/simple; bh=yJi2Cx14sSyS29LWyd5Tm76UaUyTByOH9I+D8gJFLQw=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:MIME-Version: Content-Type:References; b=A/BE9sMmVecViEQioG/guIl2qV3owBz0338+/rcKL1M44poh2JJb5rSFdR776pITo/9yxERugFUIsJsYe2rYKTyspvTo9HhmLETFD6H+L1DW0XEtW2Hp0yKKf1xJcAQg/vNRCdzdsTcWVNhvibRnFCxHHGzPP3e6GM07+WN5row= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=samsung.com; spf=pass smtp.mailfrom=samsung.com; dkim=pass (1024-bit key) header.d=samsung.com header.i=@samsung.com header.b=AS9bOm6U; arc=none smtp.client-ip=203.254.224.34 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=samsung.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=samsung.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=samsung.com header.i=@samsung.com header.b="AS9bOm6U" Received: from epcas5p1.samsung.com (unknown [182.195.41.39]) by mailout4.samsung.com (KnoxPortal) with ESMTP id 20250225051153epoutp04e180d3d0d54d2f1b59a8f4286e59b278~nW28P7chp0081700817epoutp04e for ; Tue, 25 Feb 2025 05:11:53 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 mailout4.samsung.com 20250225051153epoutp04e180d3d0d54d2f1b59a8f4286e59b278~nW28P7chp0081700817epoutp04e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com; s=mail20170921; t=1740460313; bh=8FlbVLaO/o7H2l1eNQnRbhbKI/JOMdEUHa8eyijxoXg=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=AS9bOm6UpuzkFcpS1xBnrrhqrEO5382y2eEMHsjCWwWdEOs4OJJSfF54HeJ/0Uu9a 9woK7LeThi15kZr2MDzxzDJJjLBO4NtMbigx13f51VDhustnMcg7mlmU9QD1sH5YYh 4RYJsovYIHrcja7WuM/NJ26eTYfAxSZ620ZykBAI= Received: from epsnrtp4.localdomain (unknown [182.195.42.165]) by epcas5p4.samsung.com (KnoxPortal) with ESMTP id 20250225051153epcas5p4d72ff1e4eac5087087dfab0624a9e430~nW271EsKh0382603826epcas5p4o; Tue, 25 Feb 2025 05:11:53 +0000 (GMT) Received: from epsmgec5p1new.samsung.com (unknown [182.195.38.182]) by epsnrtp4.localdomain (Postfix) with ESMTP id 4Z25Lb0ySgz4x9Q2; Tue, 25 Feb 2025 05:11:51 +0000 (GMT) Received: from epcas5p4.samsung.com ( [182.195.41.42]) by epsmgec5p1new.samsung.com (Symantec Messaging Gateway) with SMTP id 2B.0F.19710.6115DB76; Tue, 25 Feb 2025 14:11:50 +0900 (KST) Received: from epsmtrp1.samsung.com (unknown [182.195.40.13]) by epcas5p1.samsung.com (KnoxPortal) with ESMTPA id 20250225045514epcas5p10d06ab361a4125a94933fa8235fe3fa8~nWoaALfVu1699516995epcas5p1_; Tue, 25 Feb 2025 04:55:14 +0000 (GMT) Received: from epsmgmc1p1new.samsung.com (unknown [182.195.42.40]) by epsmtrp1.samsung.com (KnoxPortal) with ESMTP id 20250225045514epsmtrp1d0f23dbbee92f5ff06566717c072b986~nWoZ-VYIG1649716497epsmtrp1F; Tue, 25 Feb 2025 04:55:14 +0000 (GMT) X-AuditID: b6c32a44-36bdd70000004cfe-bc-67bd51160b69 Received: from epsmtip2.samsung.com ( [182.195.34.31]) by epsmgmc1p1new.samsung.com (Symantec Messaging Gateway) with SMTP id 8D.4C.23488.23D4DB76; Tue, 25 Feb 2025 13:55:14 +0900 (KST) Received: from localhost.localdomain (unknown [107.99.41.245]) by epsmtip2.samsung.com (KnoxPortal) with ESMTPA id 20250225045512epsmtip261a520979b8ef8fd960439b5d14a5574~nWoYGLxXI3047130471epsmtip2b; Tue, 25 Feb 2025 04:55:12 +0000 (GMT) From: Anuj Gupta To: axboe@kernel.dk, hch@lst.de, kbusch@kernel.org, martin.petersen@oracle.com Cc: anuj1072538@gmail.com, nikh1092@linux.ibm.com, linux-nvme@lists.infradead.org, linux-block@vger.kernel.org, linux-scsi@vger.kernel.org, dm-devel@lists.linux.dev, Anuj Gupta , M Nikhil Subject: [PATCH v1 1/3] block: Fix incorrect integrity sysfs reporting for DM devices Date: Tue, 25 Feb 2025 10:16:51 +0530 Message-Id: <20250225044653.6867-2-anuj20.g@samsung.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20250225044653.6867-1-anuj20.g@samsung.com> Precedence: bulk X-Mailing-List: linux-block@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFjrIJsWRmVeSWpSXmKPExsWy7bCmlq5Y4N50g+37bSw+fv3NYtE04S+z xeq7/WwWCxbNZbFYufook8WkQ9cYLfbe0raYv+wpu0X39R1sFsuP/2OyuHvxKbPFzvZjjA48 Hjtn3WX3uHy21GPTqk42jwmLDjB6bF5S7/Fi80xGj903G9g8Pj69xeLRt2UVo8fnTXIBXFHZ NhmpiSmpRQqpecn5KZl56bZK3sHxzvGmZgaGuoaWFuZKCnmJuam2Si4+AbpumTlAVysplCXm lAKFAhKLi5X07WyK8ktLUhUy8otLbJVSC1JyCkwK9IoTc4tL89L18lJLrAwNDIxMgQoTsjMW PlnAUnBAuGJnx12mBsbFAl2MnBwSAiYSr6edYuti5OIQEtjNKLFi/SVmCOcTo8TkP++ZIJxv jBI73i9ngmk58fssVGIvo0R74ywo5zOjxJUVN1hAqtgE1CWOPG9lBLFFBAIkZp2+wghSxCzw nlHidX8XG0hCWCBc4tnm2WA2i4CqxNTm9cwgNq+AhcSvr+tZIdbJS8y89J0dxOYUsJSYcKiX FaJGUOLkzCdgy5iBapq3zgY7XEJgLYdEZ8McqFtdJD7f/Q5lC0u8Or6FHcKWknjZ3wZlp0v8 uPwUqqZAovnYPkYI216i9VQ/0FAOoAWaEut36UOEZSWmnlrHBLGXT6L39xOoVl6JHfNgbCWJ 9pUwJ0hI7D3XAGV7SLzc95EFElo9jBJNM/rZJjAqzELyzywk/8xCWL2AkXkVo2RqQXFuemqy aYFhXmo5PJ6T83M3MYLTspbLDsYb8//pHWJk4mA8xCjBwawkwsuZuSddiDclsbIqtSg/vqg0 J7X4EKMpMMAnMkuJJucDM0NeSbyhiaWBiZmZmYmlsZmhkjhv886WdCGB9MSS1OzU1ILUIpg+ Jg5OqQamSy52Vm0fRL746S9gtha/dmkS9xSP1Avb6vL5Lvh89zAqT7lUvsV46QHORxfDwzqv 2L9xaui87nvF7Kz4tR1iNRF+G/e0yf7oOfae77C3gG76JZ/1siZ+h2Q3S4ZUmi+btE3dfqtV 7FuuuivpTNHLPc5/Vd0hK9Y5gUs05+av2CrF3/Ha9e6HqsJ2fGVhqcxO8NNNdN7fx7VC/Jyn lYafz8yXuR0B+XJpZ2OY+LL2X627fedalXD2a+nUpaIZ0z1u/7FlqH2jz3uxt/O3X8S/DKtF Lze4zzeedULm5edJbCneFf5bjjAt3x6jL741hu224PSJAXersycazPrpt+ykwtRru/z/l/4x 71P61qDEUpyRaKjFXFScCACo2ytsVAQAAA== X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFvrCLMWRmVeSWpSXmKPExsWy7bCSvK6R7950g3sNShYfv/5msWia8JfZ YvXdfjaLBYvmslisXH2UyWLSoWuMFntvaVvMX/aU3aL7+g42i+XH/zFZ3L34lNliZ/sxRgce j52z7rJ7XD5b6rFpVSebx4RFBxg9Ni+p93ixeSajx+6bDWweH5/eYvHo27KK0ePzJrkArigu m5TUnMyy1CJ9uwSujIVPFrAUHBCu2Nlxl6mBcbFAFyMnh4SAicSJ32eZuhi5OIQEdjNKTG99 yAyRkJA49XIZI4QtLLHy33N2EFtI4COjxNaZXCA2m4C6xJHnrUA1HBwiAiESPUdMQOYwC3xn lDjRcp0NpEZYIFRiy5XHLCA2i4CqxNTm9WDzeQUsJH59Xc8KMV9eYual72DzOQUsJSYc6mUF mSkEVHNhZTREuaDEyZlPwMYwA5U3b53NPIFRYBaS1CwkqQWMTKsYJVMLinPTc5MNCwzzUsv1 ihNzi0vz0vWS83M3MYIjRktjB+O7b036hxiZOBgPMUpwMCuJ8HJm7kkX4k1JrKxKLcqPLyrN SS0+xCjNwaIkzrvSMCJdSCA9sSQ1OzW1ILUIJsvEwSnVwGQnX7XIWolb943U66WOUfstsyou fPWUV6tJ/787mNl2X2648ycnDu2Zrrt7LS2ucz9Rejv9F1+phNblyus6XoI3F81ifsoa9NJS 54r+J/PDF/Pk1dOXfVaYml1VWxp+Qvfm1gdZ8Xfnq3SLH7t69FHM2k1Sa+wWb+ZaWJH/R+xS 3LHzmR5cm74yvlZcE3j389O1rcJz1nYzp+za/SZNZa5oTtakOCXTLWf6PfKS+L4bPmo5c4uV Q59BNOlFJOsZGQum3GPvrx5Zt3vNSVuFtoMxDFLCSdwlfo1uc2zEZLZaynktsNXa8tCr2YiP 02jPJkHhQ81ZDVOX66vuZ1e6obmo1UPvw4fwLX7M8z9UKbEUZyQaajEXFScCAHe30sIHAwAA X-CMS-MailID: 20250225045514epcas5p10d06ab361a4125a94933fa8235fe3fa8 X-Msg-Generator: CA X-Sendblock-Type: REQ_APPROVE CMS-TYPE: 105P DLP-Filter: Pass X-CFilter-Loop: Reflected X-CMS-RootMailID: 20250225045514epcas5p10d06ab361a4125a94933fa8235fe3fa8 References: <20250225044653.6867-1-anuj20.g@samsung.com> The integrity stacking logic in device-mapper currently does not explicitly mark the device with BLK_INTEGRITY_NOGENERATE and BLK_INTEGRITY_NOVERIFY when the underlying device(s) do not support integrity. This can lead to incorrect sysfs reporting of integrity attributes. Additionally, queue_limits_stack_integrity() incorrectly sets BLK_INTEGRITY_DEVICE_CAPABLE for a DM device even when none of its underlying devices support integrity. This happens because the flag is blindly inherited from the first base device, even if it lacks integrity support. This patch ensures: 1. BLK_INTEGRITY_NOGENERATE and BLK_INTEGRITY_NOVERIFY are set correctly: - When the underlying device does not support integrity. - When integrity stacking fails due to incompatible profiles. 2. device_is_integrity_capable is correctly propagated to reflect the actual capability of the stacked device. Reported-by: M Nikhil Link: https://lore.kernel.org/linux-block/f6130475-3ccd-45d2-abde-3ccceada0f0a@linux.ibm.com/ Fixes: c6e56cf6b2e7 ("block: move integrity information into queue_limits") Signed-off-by: Anuj Gupta --- block/blk-settings.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/block/blk-settings.c b/block/blk-settings.c index c44dadc35e1e..c32517c8bc2e 100644 --- a/block/blk-settings.c +++ b/block/blk-settings.c @@ -861,7 +861,8 @@ bool queue_limits_stack_integrity(struct queue_limits *t, if (!ti->tuple_size) { /* inherit the settings from the first underlying device */ - if (!(ti->flags & BLK_INTEGRITY_STACKED)) { + if (!(ti->flags & BLK_INTEGRITY_STACKED) && + (bi->flags & BLK_INTEGRITY_DEVICE_CAPABLE)) { ti->flags = BLK_INTEGRITY_DEVICE_CAPABLE | (bi->flags & BLK_INTEGRITY_REF_TAG); ti->csum_type = bi->csum_type; @@ -871,8 +872,11 @@ bool queue_limits_stack_integrity(struct queue_limits *t, ti->tag_size = bi->tag_size; goto done; } - if (!bi->tuple_size) + if (!bi->tuple_size) { + ti->flags |= BLK_INTEGRITY_NOGENERATE | + BLK_INTEGRITY_NOVERIFY; goto done; + } } if (ti->tuple_size != bi->tuple_size) @@ -893,6 +897,7 @@ bool queue_limits_stack_integrity(struct queue_limits *t, incompatible: memset(ti, 0, sizeof(*ti)); + ti->flags |= BLK_INTEGRITY_NOGENERATE | BLK_INTEGRITY_NOVERIFY; return false; } EXPORT_SYMBOL_GPL(queue_limits_stack_integrity); From patchwork Tue Feb 25 04:46:52 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Anuj Gupta X-Patchwork-Id: 13989321 Received: from mailout3.samsung.com (mailout3.samsung.com [203.254.224.33]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 47A70254AEB for ; Tue, 25 Feb 2025 05:12:07 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=203.254.224.33 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740460329; cv=none; b=m7oWxUUw90FXVU+dilLz+W85ubTElO2kNHUymeNTQYM9CavzfYbzzyMYpGcRmwXopwuZxy+LhJBjt814iyelbyVInFTndKEEE7RRyNE09aZtiPlM685JgjFiI01nx65ztsPl5WQ0/7QAFG+WGsx3zdPDcYpHbeDkNWEiNKBdflM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740460329; c=relaxed/simple; bh=NKgcEijRW/Zh1cwjLKZ7Ou4LGFsGZ0EOpmzd2R6IRSA=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:MIME-Version: Content-Type:References; b=p8vBePs2Pu50MgFJBznXaYUGCG2tN9GX45l14ss5/tydTDMOfDAuSY8RRo6c/4bBM1wzFfykjH+Ip6oy5vr1zPEepy/3rOVoedcCo+5pwn/Vne3xw4mmopJytxN7363WwXN6X4gWi4oE/sx5lcQK9J46OoD/iHzCtB7XVrVMGlk= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=samsung.com; spf=pass smtp.mailfrom=samsung.com; dkim=pass (1024-bit key) header.d=samsung.com header.i=@samsung.com header.b=viy43hXo; arc=none smtp.client-ip=203.254.224.33 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=samsung.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=samsung.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=samsung.com header.i=@samsung.com header.b="viy43hXo" Received: from epcas5p1.samsung.com (unknown [182.195.41.39]) by mailout3.samsung.com (KnoxPortal) with ESMTP id 20250225051205epoutp039ac54a57f1309cc4f0b85d715dd74a39~nW3HU9pZG2785727857epoutp03V for ; Tue, 25 Feb 2025 05:12:05 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 mailout3.samsung.com 20250225051205epoutp039ac54a57f1309cc4f0b85d715dd74a39~nW3HU9pZG2785727857epoutp03V DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com; s=mail20170921; t=1740460325; bh=WW5dHa7+uFgb2GgCT612fikzvZkwWoYKaCZBUFEuV44=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=viy43hXoIYg+cJUTZHfh+EMgEZCTo/dHIkqBdP4R3Rjm676NveiJ2DBHOQXdRmcVR DEmWplCWqYmGhPeYnp1/bMuiuG7mzMOtwYuIDszrgaDfqlPONvK0Fk2iZ6TgSpPiFE MeeZ1SY43sj5vta3plsqPhGcLyWWgQqJlaiN/Y/w= Received: from epsnrtp3.localdomain (unknown [182.195.42.164]) by epcas5p3.samsung.com (KnoxPortal) with ESMTP id 20250225051204epcas5p3b53c8df5b0a9a1767e2b0d1b8ccca76b~nW3Gn-70Y0616406164epcas5p3R; Tue, 25 Feb 2025 05:12:04 +0000 (GMT) Received: from epsmges5p2new.samsung.com (unknown [182.195.38.183]) by epsnrtp3.localdomain (Postfix) with ESMTP id 4Z25Ll0rv9z4x9Pt; Tue, 25 Feb 2025 05:11:59 +0000 (GMT) Received: from epcas5p4.samsung.com ( [182.195.41.42]) by epsmges5p2new.samsung.com (Symantec Messaging Gateway) with SMTP id 34.E6.19933.E115DB76; Tue, 25 Feb 2025 14:11:59 +0900 (KST) Received: from epsmtrp1.samsung.com (unknown [182.195.40.13]) by epcas5p3.samsung.com (KnoxPortal) with ESMTPA id 20250225045516epcas5p3fa5712152300bf976d1bc0ab26211633~nWocCz3Mo3038830388epcas5p3w; Tue, 25 Feb 2025 04:55:16 +0000 (GMT) Received: from epsmgms1p1new.samsung.com (unknown [182.195.42.41]) by epsmtrp1.samsung.com (KnoxPortal) with ESMTP id 20250225045516epsmtrp11422abd21c4b46eb83fabce65c9d7e79~nWocB-QNy1661216612epsmtrp1r; Tue, 25 Feb 2025 04:55:16 +0000 (GMT) X-AuditID: b6c32a4a-b87c770000004ddd-3e-67bd511eb825 Received: from epsmtip2.samsung.com ( [182.195.34.31]) by epsmgms1p1new.samsung.com (Symantec Messaging Gateway) with SMTP id 1A.BC.18729.43D4DB76; Tue, 25 Feb 2025 13:55:16 +0900 (KST) Received: from localhost.localdomain (unknown [107.99.41.245]) by epsmtip2.samsung.com (KnoxPortal) with ESMTPA id 20250225045514epsmtip24c33748a5236887fa8051cab6e307c55~nWoaCaXLr3049830498epsmtip2N; Tue, 25 Feb 2025 04:55:14 +0000 (GMT) From: Anuj Gupta To: axboe@kernel.dk, hch@lst.de, kbusch@kernel.org, martin.petersen@oracle.com Cc: anuj1072538@gmail.com, nikh1092@linux.ibm.com, linux-nvme@lists.infradead.org, linux-block@vger.kernel.org, linux-scsi@vger.kernel.org, dm-devel@lists.linux.dev, Anuj Gupta Subject: [PATCH v1 2/3] nvme: Fix incorrect block integrity sysfs values for non-PI namespaces Date: Tue, 25 Feb 2025 10:16:52 +0530 Message-Id: <20250225044653.6867-3-anuj20.g@samsung.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20250225044653.6867-1-anuj20.g@samsung.com> Precedence: bulk X-Mailing-List: linux-block@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFtrNJsWRmVeSWpSXmKPExsWy7bCmlq584N50g1VfmS0+fv3NYtE04S+z xeq7/WwWCxbNZbFYufook8WkQ9cYLfbe0raYv+wpu0X39R1sFsuP/2OyuHvxKbMDt8fOWXfZ PS6fLfXYtKqTzWPCogOMHpuX1Hu82DyT0WP3zQY2j49Pb7F49G1ZxejxeZNcAFdUtk1GamJK apFCal5yfkpmXrqtkndwvHO8qZmBoa6hpYW5kkJeYm6qrZKLT4CuW2YO0MFKCmWJOaVAoYDE 4mIlfTubovzSklSFjPziElul1IKUnAKTAr3ixNzi0rx0vbzUEitDAwMjU6DChOyMx90v2AsW clW83n2buYHxBEcXIyeHhICJxJI13exdjFwcQgK7GSVu72hmgXA+MUrcmzkDyvnGKNG4aC0T TMvMp5dZIRJ7GSUmfnwD1f+ZUWLRg/tsIFVsAuoSR563MoLYIgIBErNOX2EEKWIWOMso8bfx PwtIQlggQeLD7l9AYzk4WARUJd6/KgIJ8wpYSGy8d4QNYpu8xMxL39lBbE4BS4kJh3pZIWoE JU7OfAI2hhmopnnrbGaQ+RICKzkk9p6+xgrR7CLx7ecXqLOFJV4d38IOYUtJvOxvg7LTJX5c fgpVUyDRfGwfI4RtL9F6qp8Z5DZmAU2J9bv0IcKyElNPrWOC2Msn0fv7CVQrr8SOeTC2kkT7 yjlQtoTE3nMNULaHxOzjPxkhgdXDKPFg8yGmCYwKs5D8MwvJP7MQVi9gZF7FKJlaUJybnlps WmCUl1oOj+bk/NxNjOBUrOW1g/Hhgw96hxiZOBgPMUpwMCuJ8HJm7kkX4k1JrKxKLcqPLyrN SS0+xGgKDO+JzFKiyfnAbJBXEm9oYmlgYmZmZmJpbGaoJM7bvLMlXUggPbEkNTs1tSC1CKaP iYNTqoFpXr/95kMlj5/N3fO0a7rLarcP0ebiT3gjTTLsr1VXqfn7STWINO6PVROanlS9tfrA 1rWuF+/Xnnrn87Gz8fPuzjN1nVMrJi1+vjlBX62g40HBL5sXqke/rntWrvFk36aT55v4A7d/ cHWOunJR+na3tVj8PaEVfdvFPjY7PMk4pXreqWd2/lXF5/9KXqm53loUpSsRs/P2vhuPnk14 ML18xgL+zw4c7Ey8/B+vb7wwe/4ZiQ83uk6e2G6zsHid5BvfrdL7N1pf6xA7fSLnVn2HNtv9 wr+aq8p6nLZt+yN8SJvv1s4Kh0sFu5uPpfmarSvxNvmw5qK9+QU1h9bDB1MXH2DadPUxi4/f hhKrsnyRNCWW4oxEQy3mouJEAMEBpCdOBAAA X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFnrPLMWRmVeSWpSXmKPExsWy7bCSvK6J7950gzMvDS0+fv3NYtE04S+z xeq7/WwWCxbNZbFYufook8WkQ9cYLfbe0raYv+wpu0X39R1sFsuP/2OyuHvxKbMDt8fOWXfZ PS6fLfXYtKqTzWPCogOMHpuX1Hu82DyT0WP3zQY2j49Pb7F49G1ZxejxeZNcAFcUl01Kak5m WWqRvl0CV8bj7hfsBQu5Kl7vvs3cwHiCo4uRk0NCwERi5tPLrF2MXBxCArsZJY7/OcUKkZCQ OPVyGSOELSyx8t9zdoiij4wSW8/MZgNJsAmoSxx53gpUxMEhIhAi0XPEBKSGWeAyo8SUV1/A BgkLxEksOn2CGaSGRUBV4v2rIpAwr4CFxMZ7R9gg5stLzLz0nR3E5hSwlJhwqJcVpFwIqObC ymiIckGJkzOfsIDYzEDlzVtnM09gFJiFJDULSWoBI9MqRsnUguLc9NxiwwLDvNRyveLE3OLS vHS95PzcTYzgONHS3MG4fdUHvUOMTByMhxglOJiVRHg5M/ekC/GmJFZWpRblxxeV5qQWH2KU 5mBREucVf9GbIiSQnliSmp2aWpBaBJNl4uCUamAScxWV1VyY3nwm0O+T/OnZcdPO9bWo1n1c +GiWr+0ZZ1eeOqMnMi+29CZmVMh8WbptHefrPVXZHbMdVt15sifg0CvV1duY3l2eLP1Lfs87 I7cGm316arPuMqXt7XaWfvGwj+Nit+ubq2+VVr0SmpByynDStSbzI9M9Wxf+4dAOjbjhN09K bY7wvktlKzZZz91ub3bPyuqL/pFPH1Vzi7LC5Z9IbNw/1Xa6VO/bxjvFcyK8WKNWtfoc2rVk 7d0Fqn++tnNX3ij9fM3Mts16s8aWDdfX2Cf9d/XdOuOlW2qt5WINE9bdoSZR4QX6Hn0PTGwf 8G8vv64yv1H8s6i0VVYwZ/aZBbx8C7M4GDfNztNWYinOSDTUYi4qTgQAsp+yOwIDAAA= X-CMS-MailID: 20250225045516epcas5p3fa5712152300bf976d1bc0ab26211633 X-Msg-Generator: CA X-Sendblock-Type: REQ_APPROVE CMS-TYPE: 105P DLP-Filter: Pass X-CFilter-Loop: Reflected X-CMS-RootMailID: 20250225045516epcas5p3fa5712152300bf976d1bc0ab26211633 References: <20250225044653.6867-1-anuj20.g@samsung.com> Commit 9f4aa46f2a74 ("block: invert the BLK_INTEGRITY{GENERATE,VERIFY} flags") caused read_verify and write_generate to report 1 for NVMe namespaces without PI support. This happens because BLK_INTEGRITY_NOGENERATE and BLK_INTEGRITY_NOVERIFY were not explicitly set. Fix this by initializing these flags by default and clearing them only when the namespace supports PI. Fixes: 9f4aa46f2a74 ("block: invert the BLK_INTEGRITY_{GENERATE,VERIFY} flags") Signed-off-by: Anuj Gupta --- drivers/nvme/host/core.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/nvme/host/core.c b/drivers/nvme/host/core.c index 818d4e49aab5..fe599a811d38 100644 --- a/drivers/nvme/host/core.c +++ b/drivers/nvme/host/core.c @@ -1799,6 +1799,7 @@ static bool nvme_init_integrity(struct nvme_ns_head *head, memset(bi, 0, sizeof(*bi)); + bi->flags = BLK_INTEGRITY_NOGENERATE | BLK_INTEGRITY_NOVERIFY; if (!head->ms) return true; @@ -1850,6 +1851,9 @@ static bool nvme_init_integrity(struct nvme_ns_head *head, break; } + if (bi->flags & BLK_INTEGRITY_DEVICE_CAPABLE) + bi->flags &= ~(BLK_INTEGRITY_NOGENERATE | + BLK_INTEGRITY_NOVERIFY); bi->tuple_size = head->ms; bi->pi_offset = info->pi_offset; return true; From patchwork Tue Feb 25 04:46:53 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Anuj Gupta X-Patchwork-Id: 13989320 Received: from mailout4.samsung.com (mailout4.samsung.com [203.254.224.34]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id DBDE5254AE5 for ; Tue, 25 Feb 2025 05:12:05 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=203.254.224.34 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740460327; cv=none; b=NSvFcBaeY9tCz5bRtBVVhZ1Me6y294rkJjIo2JSPfJBsh4fb+Vum0A0epOakoum/SSG8G3F0CR6yVtSUax7VLiD9EBhgrDaQCSCXpp192o95y28tCBNymEO1El1+uBcogn/OhZ9YQwEOR5i72IvpWli0tc4hNC+209GLEgtlNiI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740460327; c=relaxed/simple; bh=HK1Iqsygj+kpxTqmu43IDP04/FHAkBMHLKaFyoM1VMU=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:MIME-Version: Content-Type:References; b=RwJSnSsmvWNcy/yY6v9fjHO61bsKZ07rsjyBsjNJ2rKHE953n4r/a+Zg5odg1FcCj00xaXmb57CfCzjsiLxmvS0ieXfL6rSQQEl+RdH9LNgihuI0SlsRvBGVXxGAkEi2N0B8pSiZZ83wkgNYum40cRgKAcEkeywJ1KYajVILMS0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=samsung.com; spf=pass smtp.mailfrom=samsung.com; dkim=pass (1024-bit key) header.d=samsung.com header.i=@samsung.com header.b=kfFV4Ei4; arc=none smtp.client-ip=203.254.224.34 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=samsung.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=samsung.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=samsung.com header.i=@samsung.com header.b="kfFV4Ei4" Received: from epcas5p3.samsung.com (unknown [182.195.41.41]) by mailout4.samsung.com (KnoxPortal) with ESMTP id 20250225051203epoutp04efc5959e812732ab2cd14af681b2e541~nW3Fv-7YH0096500965epoutp04f for ; Tue, 25 Feb 2025 05:12:03 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 mailout4.samsung.com 20250225051203epoutp04efc5959e812732ab2cd14af681b2e541~nW3Fv-7YH0096500965epoutp04f DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com; s=mail20170921; t=1740460323; bh=VCXl3ajc+8ZGubQRsc7OXxF8hZHNLnv0fXU3im0PirA=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=kfFV4Ei4dE1XoP9SgTWJS9FnDXk+KM4UurLRHZ9w/MRuW91WmPszo/xUxeJDMP1GR MWztxGMDVFQtKkJeb2uAKeM7nd8I0ub7lzLl2Z3cAwgkBLNqsbURVw79Pjn3EYa3ki F/+k+HX26sphiOUos6BVC0IVT+N8a4vD9EaGSnvc= Received: from epsnrtp3.localdomain (unknown [182.195.42.164]) by epcas5p3.samsung.com (KnoxPortal) with ESMTP id 20250225051203epcas5p3e5bc333ffb75a03da2a22817f626fb7a~nW3FWZG1d0515805158epcas5p3N; Tue, 25 Feb 2025 05:12:03 +0000 (GMT) Received: from epsmges5p1new.samsung.com (unknown [182.195.38.175]) by epsnrtp3.localdomain (Postfix) with ESMTP id 4Z25Lp0H1wz4x9Q3; Tue, 25 Feb 2025 05:12:02 +0000 (GMT) Received: from epcas5p3.samsung.com ( [182.195.41.41]) by epsmges5p1new.samsung.com (Symantec Messaging Gateway) with SMTP id AC.9F.20052.1215DB76; Tue, 25 Feb 2025 14:12:01 +0900 (KST) Received: from epsmtrp2.samsung.com (unknown [182.195.40.14]) by epcas5p2.samsung.com (KnoxPortal) with ESMTPA id 20250225045519epcas5p2f1431355b6ab69305c1a431bfafbf7b6~nWoeeeuwb1006010060epcas5p2w; Tue, 25 Feb 2025 04:55:19 +0000 (GMT) Received: from epsmgmc1p1new.samsung.com (unknown [182.195.42.40]) by epsmtrp2.samsung.com (KnoxPortal) with ESMTP id 20250225045519epsmtrp2f25a8ee5f1234328739692a4ca6fa6f4~nWoedwFPu0367803678epsmtrp22; Tue, 25 Feb 2025 04:55:19 +0000 (GMT) X-AuditID: b6c32a49-3fffd70000004e54-42-67bd51216c0b Received: from epsmtip2.samsung.com ( [182.195.34.31]) by epsmgmc1p1new.samsung.com (Symantec Messaging Gateway) with SMTP id 9F.4C.23488.73D4DB76; Tue, 25 Feb 2025 13:55:19 +0900 (KST) Received: from localhost.localdomain (unknown [107.99.41.245]) by epsmtip2.samsung.com (KnoxPortal) with ESMTPA id 20250225045517epsmtip260411173872e85ea6cb80ea78ae41ad9~nWocTJ5_o2728127281epsmtip2c; Tue, 25 Feb 2025 04:55:16 +0000 (GMT) From: Anuj Gupta To: axboe@kernel.dk, hch@lst.de, kbusch@kernel.org, martin.petersen@oracle.com Cc: anuj1072538@gmail.com, nikh1092@linux.ibm.com, linux-nvme@lists.infradead.org, linux-block@vger.kernel.org, linux-scsi@vger.kernel.org, dm-devel@lists.linux.dev, Anuj Gupta , M Nikhil Subject: [PATCH v1 3/3] scsi: Fix incorrect integrity sysfs values when HBA doesn't support DIX Date: Tue, 25 Feb 2025 10:16:53 +0530 Message-Id: <20250225044653.6867-4-anuj20.g@samsung.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20250225044653.6867-1-anuj20.g@samsung.com> Precedence: bulk X-Mailing-List: linux-block@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-Brightmail-Tracker: H4sIAAAAAAAAA02Te0xbVRzHd+4t7aVZzV3H5qHLRr0ZLgyBVkt3MUUat7g7t5guRhOH2t3A TYv05W2x+KQDgcgKdBpMKAwQGQwIewBjBdbJKo9Q4nAMIaBNyFIydFNkOGRhbrbcovvv8/ud 7+95zsFQ8QBfguWYbAxrog0EX8jr+T4hIemZo16d7N71feTS/TUeWej6ByXbA5V8sqHxNI9s bR9CyC99U4D0ziaS9c3zAvLktIdPtow8QsjAjXmU7C0dBurNVK87IKBu/pBHdbZ9wadcjQOA 6moqoBa6qgHVP+PgU0vzszyqorsNUMuduzTCY7kqPUNnM6yUMWWZs3NMunTi8Ova/dpUpUye JE8j9xFSE21k0okDRzRJr+QYQl0T0g9oQ17IpaGtViLlJRVrzrMxUr3ZaksnGEu2waKwJFtp ozXPpEs2MbYX5TLZ86kh4fFcffvCA2BxCPN/qnUJHKAHKwPRGMQVcO27i1FlQIiJ8X4AL9f3 CTjjHoCTrc0oZ6wAeK1mAd0Icd6qiKi8AM4F+xDOWAZwqPAXQVjFx/fAwdvFIMwxuAa6xyZB WITiiwDeqSzjhw+24jQ8O+RGwszD4+HFmW/WWYSTsHb0WhRXLg5WT/y9njQaT4MuX3kUp9kC R6uDvDCjIU3RpZr1XiHegcGRplmECz4A66/cF3C8Ff420h1hCVz+w8vnWAdXb85H9BZYNHwV cJwBi/2VoaRYqEACPN+Xwrl3wir/OYSr+xQsXwtGQkXQU7fBBCxtrY0whN7rDiScBuIUvD0H uWU5ATy30oG4gNT9xDjuJ8Zx/1+5AaBtIJaxWI06xppqkZsY+3/XnGU2doL1p7z3kAcE5v5M 9gEEAz4AMZSIEUXnXNGJRdn0hx8xrFnL5hkYqw+khvZ9CpVsyzKH/oLJppUr0mQKpVKpSHtB KSeeFhX1fq4T4zraxuQyjIVhN+IQLFriQPZMupI8i/sDXwXtj39u0dd2KXs6lI8rzpyYGB8b Z1drVTPanfZ8Xa4noNgevHR8xdizFNN2erfaL80XvtOs1iee6rx6Qzpx8vfqqkHfconq2Fhc grZ8YOb8QwcS5TS4NhNEk/CEM+5wbGaJ8qz/E/dbk9KvX5Xsupuvk6ofdjR8VlN2a1sBb5gd rGPfuPxAptn06FvXj71V/qN3c2Njdjdi79ZllHwqKP1L0DOOOt9ejBpUdJb/ajh4wefZNFFY c+GQ6s3X/FPPFiAZmYnqfjGbMj1a7Oieu4P1rcxJtxu6jGvO6qkdCjuU7LC/F5wZGex/jlbE v/9yy1r8dObqmY8JnlVPy/eirJX+F/zReHZTBAAA X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFvrKLMWRmVeSWpSXmKPExsWy7bCSvK657950g833pCw+fv3NYtE04S+z xeq7/WwWCxbNZbFYufook8WkQ9cYLfbe0raYv+wpu0X39R1sFsuP/2OyuHvxKbPFzvZjjA48 Hjtn3WX3uHy21GPTqk42jwmLDjB6bF5S7/Fi80xGj903G9g8Pj69xeLRt2UVo8fnTXIBXFFc NimpOZllqUX6dglcGatf/GQsaOCquDpnAnsD4zaOLkZODgkBE4meR33sXYxcHEICuxklLq+9 zwyRkJA49XIZI4QtLLHy33Oooo+MEudXNLCCJNgE1CWOPG8FKuLgEBEIkeg5YgJSwyzwnVHi RMt1NpAaYYF4ifN/poDVswioSmy8uZAJxOYVsJCYc/IgK8QCeYmZl76zg9icApYSEw71soLM FAKqubAyGqJcUOLkzCcsIDYzUHnz1tnMExgFZiFJzUKSWsDItIpRMrWgODc9N9mwwDAvtVyv ODG3uDQvXS85P3cTIzhmtDR2ML771qR/iJGJg/EQowQHs5IIL2fmnnQh3pTEyqrUovz4otKc 1OJDjNIcLErivCsNI9KFBNITS1KzU1MLUotgskwcnFINTJO1b8S+L7ZwOlUl8k6cpVdXw8zy 4zqRl/tMOScctU1233/wX8lm30tqqTsdDz7MXP9E1ZMhpfjTsdTkxV0LXC3WfFzy8uPHPUWP N5Xdlg9MTEqsPVqTlytQtNhc8eGUXM/mF5qVYcJx08qbSo399U9aZ1TNfBlcE/X1hvrnZQ0r tAtr/tZeMnA+tuTZq/XdaR+6nqozv+OzY1QMdg/9v2RTjv2XtTcMPpdY2Uu9+8No+Svseevh h5NbFV1T79jfKq+4Mztyv++01zyTy99eqdudcUecK8Ba4eQ9lVrF/0s6eyt/+30ULvz/p2VF 4ZPd75rVs6dMWWrzrClm7eP3F97YttQuiSzaoP7swCuXo0osxRmJhlrMRcWJAGfzQFsIAwAA X-CMS-MailID: 20250225045519epcas5p2f1431355b6ab69305c1a431bfafbf7b6 X-Msg-Generator: CA X-Sendblock-Type: REQ_APPROVE CMS-TYPE: 105P DLP-Filter: Pass X-CFilter-Loop: Reflected X-CMS-RootMailID: 20250225045519epcas5p2f1431355b6ab69305c1a431bfafbf7b6 References: <20250225044653.6867-1-anuj20.g@samsung.com> For SCSI disks where the host bus adapter (HBA) does not support Data Integrity Extensions (DIX), the write_generate and read_verify sysfs attributes incorrectly report 1 instead of 0. This happens because the BLK_INTEGRITY_NOGENERATE and BLK_INTEGRITY_NOVERIFY flags are not explicitly set when DIX is disabled. Fix this by properly setting these flags when DIX is not enabled. Reported-by: M Nikhil Link: https://lore.kernel.org/linux-block/f6130475-3ccd-45d2-abde-3ccceada0f0a@linux.ibm.com/ Fixes: 9f4aa46f2a74 ("block: invert the BLK_INTEGRITY_{GENERATE,VERIFY} flags") Signed-off-by: Anuj Gupta --- drivers/scsi/sd_dif.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/scsi/sd_dif.c b/drivers/scsi/sd_dif.c index ae6ce6f5d622..be2cd06f500b 100644 --- a/drivers/scsi/sd_dif.c +++ b/drivers/scsi/sd_dif.c @@ -40,8 +40,10 @@ void sd_dif_config_host(struct scsi_disk *sdkp, struct queue_limits *lim) dif = 0; dix = 1; } - if (!dix) + if (!dix) { + bi->flags |= BLK_INTEGRITY_NOGENERATE | BLK_INTEGRITY_NOVERIFY; return; + } /* Enable DMA of protection information */ if (scsi_host_get_guard(sdkp->device->host) & SHOST_DIX_GUARD_IP)