sv> I have a problem mmaping /dev/mem on some address in RAM. I am
sv> aware of caveats,but I am trying to mmap a region which I am sure
sv> is not in use by the kernel(some additional code does this and
sv> returns a physical address which is what I use for mmap). The
sv> mmap call itself succeeds and /proc/pid/maps also shows that
sv> region, but I am unable to see what I write in target memory.I
sv> also tried with the O_SYNC flag as I was wondering is caching had
sv> anything to do with the results that I was seeing.No effect.
sv> This however works with a mem= option and when the mmap region
sv> falls out of the mem= boundary. any clues? Please cc as I am
sv> not subscribed sridhar
look at mm/memory.c:remap_pte_range():
if ((!VALID_PAGE(page)) || PageReserved(page))
set_pte(pte, mk_pte_phys(phys_addr, prot));
so, your pages aren't mapped at all and pte'es contain zero ...
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/