On 06-Nov-19 7:37 AM, David Marchand wrote:
On Wed, Nov 6, 2019 at 7:16 AM Wangyu (Eric) <seven.wan...@huawei.com> wrote:


In 64K pagesize system, DPDK will read the size NIC need in 
uio/uio1/maps/map1/size,  when the size small than pagesize(e.g.,82599 is 16K), 
dev->mem_resource[i].len will be 16K, but the mmap function applies for at 
least 1 page size, which is 64K.
Then second NIC mmap, start address is first NIC address + 16K, which already 
used by first NIC.

Do you see this issue with vfio?


So if change the size to first NIC address + 64K, problem solved.

You are hacking a description of the device resources to workaround a problem.
This patch is a no go for me.

Maybe there is something to do with the hint passed to mmap in uio case.
Adding Anatoly to the loop.


We map BAR's with arbitrary addresses, so i don't think we can do much here - if mmap() returns page-unaligned addresses on platforms with 64K sizes, it's not our fault.

That said, we could simply page-align mapping requests.

--
Thanks,
Anatoly

Reply via email to