]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
RDMA/bnxt_re: Check debugfs parameter allocation for failure
authorRuoyu Wang <ruoyuw560@gmail.com>
Sat, 6 Jun 2026 04:06:44 +0000 (12:06 +0800)
committerJason Gunthorpe <jgg@nvidia.com>
Wed, 10 Jun 2026 17:07:55 +0000 (14:07 -0300)
bnxt_re_debugfs_add_pdev() allocates per-file private data for the CC
configuration debugfs entries. The loop that initializes those entries
uses rdev->cc_config_params immediately, so allocation failure would lead
to NULL pointer dereferences while setting up debugfs.

Debugfs is best-effort. If the CC configuration private data cannot be
allocated just stop.

Link: https://patch.msgid.link/r/20260606040644.13-1-ruoyuw560@gmail.com
Signed-off-by: Ruoyu Wang <ruoyuw560@gmail.com>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
drivers/infiniband/hw/bnxt_re/debugfs.c

index 5fed2cf66be30a1094badf025bfacf234a50c4f7..143e9bfc6b79577237548acdff7106ccba694b24 100644 (file)
@@ -498,6 +498,8 @@ void bnxt_re_debugfs_add_pdev(struct bnxt_re_dev *rdev)
        bnxt_re_debugfs_add_info(rdev);
 
        rdev->cc_config_params = kzalloc_obj(*cc_params);
+       if (!rdev->cc_config_params)
+               return;
 
        for (i = 0; i < BNXT_RE_CC_PARAM_GEN0; i++) {
                struct bnxt_re_cc_param *tmp_params = &rdev->cc_config_params->gen0_parms[i];