Re: mmaping /dev/mem

Alex Tomas (bzzz@tmi.comex.ru)
13 Mar 2003 23:49:59 +0300


>>>>> sridhar vaidyanathan (sv) writes:

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/