git: 7d763eadd36e - stable/14 - cam: Check if cam_simq_alloc fails for the xpt bus during module init

From: John Baldwin <jhb_at_FreeBSD.org>
Date: Mon, 08 Apr 2024 19:04:29 UTC
The branch stable/14 has been updated by jhb:

URL: https://cgit.FreeBSD.org/src/commit/?id=7d763eadd36e9b9419379756add71f5383f40af0

commit 7d763eadd36e9b9419379756add71f5383f40af0
Author:     John Baldwin <jhb@FreeBSD.org>
AuthorDate: 2024-02-09 19:53:43 +0000
Commit:     John Baldwin <jhb@FreeBSD.org>
CommitDate: 2024-04-08 17:53:43 +0000

    cam: Check if cam_simq_alloc fails for the xpt bus during module init
    
    This is very unlikely to fail (and if it does, CAM isn't going to work
    regardless), but fail with an error rather than a gauranteed panic via
    NULL pointer dereference.
    
    PR:             276770
    Reported by:    Qiushi <w290680224@gmail.com>
    
    (cherry picked from commit eb86c6c5b462c996e44c45ba496937b75ef22da3)
---
 sys/cam/cam_xpt.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/sys/cam/cam_xpt.c b/sys/cam/cam_xpt.c
index 6eac81c18160..3aa2f8a091a6 100644
--- a/sys/cam/cam_xpt.c
+++ b/sys/cam/cam_xpt.c
@@ -911,6 +911,8 @@ xpt_init(void *dummy)
 	 * perform other XPT functions.
 	 */
 	devq = cam_simq_alloc(16);
+	if (devq == NULL)
+		return (ENOMEM);
 	xpt_sim = cam_sim_alloc(xptaction,
 				xptpoll,
 				"xpt",