Re: [PATCH v2] RDMA/uverbs: Make CQ handle mandatory for WQ creation
From: Leon Romanovsky
Date: Tue Sep 15 2026 - 07:22:18 EST
On Fri, 11 Sep 2026 10:15:57 +0800, lirongqing wrote:
> UVERBS_ATTR_CREATE_WQ_CQ_HANDLE is declared UA_OPTIONAL in the ioctl
> method definition, so the mandatory attribute bitmap does not enforce
> its presence. When userspace omits it, uverbs_attr_get_obj() returns
> ERR_PTR(-ENOENT) and the handler stores that error pointer into
> wq_init_attr.cq without validation.
>
> The bogus cq pointer is then passed to the driver's create_wq callback.
> In the mlx5 case, create_rq() calls to_mcq(init_attr->cq) which applies
> container_of to the ERR_PTR value, producing a near-NULL pointer. The
> subsequent access in get_rq_ts_format() triggers a kernel NULL pointer
> dereference:
>
> [...]
Applied, thanks!
[1/1] RDMA/uverbs: Make CQ handle mandatory for WQ creation
https://git.kernel.org/rdma/rdma/c/f7d28791433d37
Best regards,
--
Leon Romanovsky <leon@xxxxxxxxxx>