[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <6d4a6167-2480-0091-33a1-6b0cb81e4645@tsinghua.edu.cn>
Date: Tue, 4 Aug 2020 10:17:26 +0800
From: Jia-Ju Bai <baijiaju@...nghua.edu.cn>
To: David Miller <davem@...emloft.net>
Cc: doshir@...are.com, pv-drivers@...are.com, kuba@...nel.org,
netdev@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] net: vmxnet3: avoid accessing the data mapped to
streaming DMA
On 2020/8/4 6:59, David Miller wrote:
> From: Jia-Ju Bai <baijiaju@...nghua.edu.cn>
> Date: Sun, 2 Aug 2020 21:11:07 +0800
>
>> In vmxnet3_probe_device(), "adapter" is mapped to streaming DMA:
>> adapter->adapter_pa = dma_map_single(..., adapter, ...);
>>
>> Then "adapter" is accessed at many places in this function.
>>
>> Theses accesses may cause data inconsistency between CPU cache and
>> hardware.
>>
>> To fix this problem, dma_map_single() is called after these accesses.
>>
>> Signed-off-by: Jia-Ju Bai <baijiaju@...nghua.edu.cn>
> 'adapter' is accessed everywhere, in the entire driver, not just here
> in the probe function.
Okay, replacing dma_map_single() with dma_alloc_coherent() may be better.
If you think this solution is okay, I can submit a new patch.
Best wishes,
Jia-Ju Bai
Powered by blists - more mailing lists