lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <706b7917-28b4-4f54-8c5a-7d67729a62aa@fujitsu.com>
Date: Mon, 29 Dec 2025 05:49:17 +0000
From: "Zhijian Li (Fujitsu)" <lizhijian@...itsu.com>
To: Zhu Yanjun <yanjun.zhu@...ux.dev>, "linux-rdma@...r.kernel.org"
	<linux-rdma@...r.kernel.org>
CC: "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
	"zyjzyj2000@...il.com" <zyjzyj2000@...il.com>, "jgg@...pe.ca" <jgg@...pe.ca>,
	"leon@...nel.org" <leon@...nel.org>
Subject: Re: [PATCH] RDMA/rxe: Remove unused page_offset member



On 27/12/2025 13:30, Zhu Yanjun wrote:
> 在 2025/12/26 1:41, Li Zhijian 写道:
>> The `page_offset` member of the `rxe_mr` struct was initialized based on
>> `ibmr.iova`, which at the initialization point hadn't been properly set.
>>
>> Consequently, the value assigned to `page_offset` was incorrect. However,
> 
> Hi, Zhijian
> 
> Why page_offset was incorrect? Can you explain it and add the explainations into commit log?


>> The `page_offset` member of the `rxe_mr` struct was initialized based on
>> `ibmr.iova`, which at the initialization point hadn't been properly set.

The reason is stated in the line above.

Are you suggesting that I should add more details about when/where
`ibmr.iova` is correctly initialized? If so, I can clarify that it
is assigned its value in the ib_sg_to_pages() function.


Thanks
Zhijian


> 
> But removing page_offset seems correct.
> 
> Thanks,
> Reviewed-by: Zhu Yanjun <yanjun.zhu@...ux.dev>
> 
> Zhu Yanjun
> 
>> since `page_offset` was never utilized throughout the code, it can be safely
>> removed to clean up the codebase and avoid future confusion.
>>
>> Signed-off-by: Li Zhijian <lizhijian@...itsu.com>
>> ---
>>   drivers/infiniband/sw/rxe/rxe_mr.c    | 1 -
>>   drivers/infiniband/sw/rxe/rxe_odp.c   | 1 -
>>   drivers/infiniband/sw/rxe/rxe_verbs.h | 1 -
>>   3 files changed, 3 deletions(-)
>>
>> diff --git a/drivers/infiniband/sw/rxe/rxe_mr.c b/drivers/infiniband/sw/rxe/rxe_mr.c
>> index bcb97b3ea58a..b28b56db725a 100644
>> --- a/drivers/infiniband/sw/rxe/rxe_mr.c
>> +++ b/drivers/infiniband/sw/rxe/rxe_mr.c
>> @@ -237,7 +237,6 @@ int rxe_map_mr_sg(struct ib_mr *ibmr, struct scatterlist *sgl,
>>       mr->nbuf = 0;
>>       mr->page_shift = ilog2(page_size);
>>       mr->page_mask = ~((u64)page_size - 1);
>> -    mr->page_offset = mr->ibmr.iova & (page_size - 1);
>>       return ib_sg_to_pages(ibmr, sgl, sg_nents, sg_offset, rxe_set_page);
>>   }
>> diff --git a/drivers/infiniband/sw/rxe/rxe_odp.c b/drivers/infiniband/sw/rxe/rxe_odp.c
>> index f58e3ec6252f..8b6a8b064d3c 100644
>> --- a/drivers/infiniband/sw/rxe/rxe_odp.c
>> +++ b/drivers/infiniband/sw/rxe/rxe_odp.c
>> @@ -110,7 +110,6 @@ int rxe_odp_mr_init_user(struct rxe_dev *rxe, u64 start, u64 length,
>>       mr->access = access_flags;
>>       mr->ibmr.length = length;
>>       mr->ibmr.iova = iova;
>> -    mr->page_offset = ib_umem_offset(&umem_odp->umem);
>>       err = rxe_odp_init_pages(mr);
>>       if (err) {
>> diff --git a/drivers/infiniband/sw/rxe/rxe_verbs.h b/drivers/infiniband/sw/rxe/rxe_verbs.h
>> index fd48075810dd..f94ce85eb807 100644
>> --- a/drivers/infiniband/sw/rxe/rxe_verbs.h
>> +++ b/drivers/infiniband/sw/rxe/rxe_verbs.h
>> @@ -347,7 +347,6 @@ struct rxe_mr {
>>       int            access;
>>       atomic_t        num_mw;
>> -    unsigned int        page_offset;
>>       unsigned int        page_shift;
>>       u64            page_mask;
> 

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ