From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (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 0D4AC2EBDCD; Tue, 15 Jul 2025 13:54:42 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1752587682; cv=none; b=QLuPXTQpxk6wYfiy+58jcssZ+FHiaoZPxUJNdZ7bFiDhZ+hwmFvFLfGEZKTvJL3Ex5gAxGCI7AR2UQvvMe2GI5MmgZgjJSsitkP2irZAQ6xSGgsi9ZNWbvmDr1RWKUpp5KKLeuDgIaWx4sd7xmQ+dirOOU2puGqhq/G8c39H1oY= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1752587682; c=relaxed/simple; bh=K4DCsgSRRR4F8IP7rjio8Kum0JfxWXKOFpiIp4lkE70=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=Qn7xt9e6jc1hp8LWyQB4IREISR7/XL6S29Nju4sP6EapzqQf+6JmkudqgHkJQ4FZS3MG8sk/P06y6jcZZ5MowyrPEepXsnUAIZ2jReByHOESbf3GfdoJBIiA0Vs1kU+E4m8BQEtCTbYPaNliTUYM09XTG7WaMN1u6acYiJDIyxw= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linuxfoundation.org header.i=@linuxfoundation.org header.b=OZZRYT8h; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linuxfoundation.org header.i=@linuxfoundation.org header.b="OZZRYT8h" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 91C72C4CEE3; Tue, 15 Jul 2025 13:54:41 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1752587681; bh=K4DCsgSRRR4F8IP7rjio8Kum0JfxWXKOFpiIp4lkE70=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=OZZRYT8hIjXEROg36UbxP0+T/hrnJUBorwg3FiXbGQ5hnE20aZVUPm3DJ5iasmQpV mtxuZEcBQLTpwoHwIXmjPAM/t/qUR22Rd/ECC5UlKmPcA1ARabBcDlviv3DBXJrlAI RxxJ6r4FSDxgNEl0zpcl9KBDOS2fxdWZenpsHCHY= From: Greg Kroah-Hartman To: stable@vger.kernel.org Cc: Greg Kroah-Hartman , patches@lists.linux.dev, Maurizio Lombardi , Mike Christie , John Meneghini , "Martin K. Petersen" , Sasha Levin Subject: [PATCH 5.10 104/208] scsi: target: Fix NULL pointer dereference in core_scsi3_decode_spec_i_port() Date: Tue, 15 Jul 2025 15:13:33 +0200 Message-ID: <20250715130815.114452147@linuxfoundation.org> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20250715130810.830580412@linuxfoundation.org> References: <20250715130810.830580412@linuxfoundation.org> User-Agent: quilt/0.68 X-stable: review X-Patchwork-Hint: ignore Precedence: bulk X-Mailing-List: patches@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit 5.10-stable review patch. If anyone has any objections, please let me know. ------------------ From: Maurizio Lombardi [ Upstream commit d8ab68bdb294b09a761e967dad374f2965e1913f ] The function core_scsi3_decode_spec_i_port(), in its error code path, unconditionally calls core_scsi3_lunacl_undepend_item() passing the dest_se_deve pointer, which may be NULL. This can lead to a NULL pointer dereference if dest_se_deve remains unset. SPC-3 PR SPEC_I_PT: Unable to locate dest_tpg Unable to handle kernel paging request at virtual address dfff800000000012 Call trace: core_scsi3_lunacl_undepend_item+0x2c/0xf0 [target_core_mod] (P) core_scsi3_decode_spec_i_port+0x120c/0x1c30 [target_core_mod] core_scsi3_emulate_pro_register+0x6b8/0xcd8 [target_core_mod] target_scsi3_emulate_pr_out+0x56c/0x840 [target_core_mod] Fix this by adding a NULL check before calling core_scsi3_lunacl_undepend_item() Signed-off-by: Maurizio Lombardi Link: https://lore.kernel.org/r/20250612101556.24829-1-mlombard@redhat.com Reviewed-by: Mike Christie Reviewed-by: John Meneghini Signed-off-by: Martin K. Petersen Signed-off-by: Sasha Levin --- drivers/target/target_core_pr.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/target/target_core_pr.c b/drivers/target/target_core_pr.c index b42193c554fb2..2bc849799739e 100644 --- a/drivers/target/target_core_pr.c +++ b/drivers/target/target_core_pr.c @@ -1858,7 +1858,9 @@ core_scsi3_decode_spec_i_port( } kmem_cache_free(t10_pr_reg_cache, dest_pr_reg); - core_scsi3_lunacl_undepend_item(dest_se_deve); + + if (dest_se_deve) + core_scsi3_lunacl_undepend_item(dest_se_deve); if (is_local) continue; -- 2.39.5