From: Jeffin Philip <jeffinphilip14@gmail.com>
To: jgg@ziepe.ca
Cc: leon@kernel.org, kees@kernel.org, Tatyana.E.Nikolova@intel.com,
roland@purestorage.com, linux-rdma@vger.kernel.org,
linux-kernel@vger.kernel.org, larrystevenwise@gmail.com,
pj.waskiewicz@solidfire.com,
Jeffin Philip <jeffinphilip14@gmail.com>,
syzbot+bd317784d628820741b5@syzkaller.appspotmail.com,
stable@vger.kernel.org
Subject: [PATCH] RDMA/core: fix refcount bug in iwpm_get_nlmsg_request()
Date: Wed, 2 Sep 2026 14:22:13 +0530 [thread overview]
Message-ID: <20260902085213.145312-1-jeffinphilip14@gmail.com> (raw)
iwpm_get_nlmsg_request() initializes refcount _after_ list_add_tail()
making it accessible to global list where another CPU can kref_get()
on nlmsg_request causing a refcount "addition on 0" bug. Fix this
by initializing kref _before_ list_add_tail() so refcount for
nlmsg_request can be incremented/decremented normally.
Reported-by: syzbot+bd317784d628820741b5@syzkaller.appspotmail.com
Closes: https://syzkaller.appspot.com/bug?extid=bd317784d628820741b5
Fixes: 30dc5e63d6a5 ("RDMA/core: Add support for iWARP Port Mapper user space service")
Cc: stable@vger.kernel.org
Signed-off-by: Jeffin Philip <jeffinphilip14@gmail.com>
---
drivers/infiniband/core/iwpm_util.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/infiniband/core/iwpm_util.c b/drivers/infiniband/core/iwpm_util.c
index 990cf928b32a..5d07c5756987 100644
--- a/drivers/infiniband/core/iwpm_util.c
+++ b/drivers/infiniband/core/iwpm_util.c
@@ -313,13 +313,13 @@ struct iwpm_nlmsg_request *iwpm_get_nlmsg_request(__u32 nlmsg_seq,
nlmsg_request = kzalloc_obj(struct iwpm_nlmsg_request, gfp);
if (!nlmsg_request)
return NULL;
+ kref_init(&nlmsg_request->kref);
+ kref_get(&nlmsg_request->kref);
spin_lock_irqsave(&iwpm_nlmsg_req_lock, flags);
list_add_tail(&nlmsg_request->inprocess_list, &iwpm_nlmsg_req_list);
spin_unlock_irqrestore(&iwpm_nlmsg_req_lock, flags);
- kref_init(&nlmsg_request->kref);
- kref_get(&nlmsg_request->kref);
nlmsg_request->nlmsg_seq = nlmsg_seq;
nlmsg_request->nl_client = nl_client;
nlmsg_request->request_done = 0;
--
2.55.0
next reply other threads:[~2026-09-02 8:52 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-02 8:52 Jeffin Philip [this message]
2026-09-03 9:52 ` [PATCH] RDMA/core: fix refcount bug in iwpm_get_nlmsg_request() Leon Romanovsky
2026-09-03 10:17 ` [PATCH v2] " Jeffin Philip
2026-09-03 10:23 ` Leon Romanovsky
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260902085213.145312-1-jeffinphilip14@gmail.com \
--to=jeffinphilip14@gmail.com \
--cc=Tatyana.E.Nikolova@intel.com \
--cc=jgg@ziepe.ca \
--cc=kees@kernel.org \
--cc=larrystevenwise@gmail.com \
--cc=leon@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-rdma@vger.kernel.org \
--cc=pj.waskiewicz@solidfire.com \
--cc=roland@purestorage.com \
--cc=stable@vger.kernel.org \
--cc=syzbot+bd317784d628820741b5@syzkaller.appspotmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.