Re: [PATCH] RDMA/hns: Use dma_alloc_coherent() instead of kmalloc/dma_map_single()

From: Wenpeng Liang
Date: Sat Oct 09 2021 - 08:03:08 EST


On 2021/10/9 18:42, Cai Huoqing wrote:
> On 09 10月 21 17:50:50, Wenpeng Liang wrote:
>>
>>
>> On 2021/10/5 3:52, Jason Gunthorpe wrote:
>>> On Mon, Sep 27, 2021 at 08:59:13AM -0300, Jason Gunthorpe wrote:
>>>> On Sun, Sep 26, 2021 at 02:11:15PM +0800, Cai Huoqing wrote:
>>>>> Replacing kmalloc/kfree/dma_map_single/dma_unmap_single()
>>>>> with dma_alloc_coherent/dma_free_coherent() helps to reduce
>>>>> code size, and simplify the code, and coherent DMA will not
>>>>> clear the cache every time.
>>>>>
>>>>> Signed-off-by: Cai Huoqing <caihuoqing@xxxxxxxxx>
>>>>> drivers/infiniband/hw/hns/hns_roce_hw_v2.c | 20 +++++---------------
>>>>> 1 file changed, 5 insertions(+), 15 deletions(-)
>>>>
>>>> Given I don't see any dma_sync_single calls for this mapping, isn't
>>>> this a correctness fix too?
>>>
>>> HNS folks?
>>>
>>> Jason
>>> .
>>>
>>
>> Our SoC can keep cache coherent, so there is no exception even if
>> dma_sync_single* is not called, but the driver should not make
>> assumptions about SoC.
>>
>> So using dma_alloc_coherent() instead of kmalloc/dma_map_single()
>> can simplify the code and achieve the same purpose.
>>
>> Wenpeng Liang
>
>
> Hi Liang
>
> Thanks for your feedback.
>
> If you think my patch is correct, you can give a Reviewed-by: to it.
> You can also give a Tested-by: to it, if the test on hardware was made.
>
> Thanks
> Cai
> .
>

Hi, Cai

After testing, it seems ok to me.

Reviewed-by: Wenpeng Liang <liangwenpeng@xxxxxxxxxx>
Tested-by: Wenpeng Liang <liangwenpeng@xxxxxxxxxx>

Thanks,
Wenpeng