]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
RDMA/ocrdma: Clarify the mm_head searching
authorJason Gunthorpe <jgg@nvidia.com>
Tue, 28 Apr 2026 16:17:41 +0000 (13:17 -0300)
committerJason Gunthorpe <jgg@nvidia.com>
Sat, 2 May 2026 18:30:48 +0000 (15:30 -0300)
The intention of this code is to find matching entries exactly, the driver
never creates phys_addr's with different lens so the current expression is
not a bug, but it doesn't make sense and confuses review tooling.

Search for exact match instead.

Link: https://sashiko.dev/#/patchset/0-v1-e911b76a94d1%2B65d95-rdma_udata_rep_jgg%40nvidia.com?part=4
Link: https://patch.msgid.link/r/8-v1-41f3135e5565+9d2-rdma_ai_fixes1_jgg@nvidia.com
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
drivers/infiniband/hw/ocrdma/ocrdma_verbs.c

index c17e2a54dbcaf91b36b2e6ac56a0d50261c4e8e9..463c9a5703fc4ebf76e3e925849a534a97947650 100644 (file)
@@ -215,7 +215,7 @@ static void ocrdma_del_mmap(struct ocrdma_ucontext *uctx, u64 phy_addr,
 
        mutex_lock(&uctx->mm_list_lock);
        list_for_each_entry_safe(mm, tmp, &uctx->mm_head, entry) {
-               if (len != mm->key.len && phy_addr != mm->key.phy_addr)
+               if (len != mm->key.len || phy_addr != mm->key.phy_addr)
                        continue;
 
                list_del(&mm->entry);
@@ -233,7 +233,7 @@ static bool ocrdma_search_mmap(struct ocrdma_ucontext *uctx, u64 phy_addr,
 
        mutex_lock(&uctx->mm_list_lock);
        list_for_each_entry(mm, &uctx->mm_head, entry) {
-               if (len != mm->key.len && phy_addr != mm->key.phy_addr)
+               if (len != mm->key.len || phy_addr != mm->key.phy_addr)
                        continue;
 
                found = true;