From: Lukas Razik <[email protected]>
Date: Wed, 16 Nov 2011 19:22:34 +0000 (GMT)

> I'm wondering if the bug is in the mlx4 code or in the sparc
> io_remap_pfn_range()
> code.  From the "Bad page map" pte value, if I understand sparc mm correctly,
> the PTE is seen as not present.

The not-present test is essentially testing the PTE against zero.

This bug check is making sure that there are not already existing mappings
at that address when the io_remap_pfn_range() call occurs.

x86 uses remap_pfn_range() as the implementation of it's
io_remap_pfn_range() and it also has the same exact assertion
check, in remap_pte_range().

I can't see any obvious bug in the mlx4 mmap method.

The only thing I can come up with is that perhaps there is an assumption
hiding around somewhere that PAGE_SIZE is 4096.  Such an assumption would
go undetected on both 32-bit and 64-bit x86 platforms since PAGE_SIZE is
4096 there.  Whereas on sparc64 it is 8192.
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to