On Fri, Oct 7, 2011 at 3:29 PM, rohan puri <[email protected]> wrote:
> > > On Fri, Oct 7, 2011 at 12:41 PM, Vaibhav Jain <[email protected]> wrote: > >> On Thu, Oct 6, 2011 at 9:42 PM, rohan puri <[email protected]>wrote: >> >>> >>> >>> On Fri, Oct 7, 2011 at 4:13 AM, Vaibhav Jain <[email protected]> wrote: >>> >>>> >>>> >>>> On Thu, Oct 6, 2011 at 11:28 AM, Mulyadi Santosa < >>>> [email protected]> wrote: >>>> >>>>> Hi... >>>>> >>>>> On Thu, Oct 6, 2011 at 02:34, Vaibhav Jain <[email protected]> wrote: >>>>> > Hi, >>>>> > >>>>> > I am trying to run a program that scans memory from a given physical >>>>> address >>>>> > using /dev/mem. >>>>> > It uses mmap to map physical address from /dev/mem. So to start with >>>>> I used >>>>> > /proc/iomem to look up the >>>>> > physical memory mapping and found the address 00010000 to be the >>>>> starting >>>>> > address for System ram. But whenever I >>>>> > provide this address to the program it throws an error of "Operation >>>>> not >>>>> > permitted". >>>>> >>>>> Probably this could also due to mmap NULL dereferencing protection (at >>>>> least that's how I name it :) ) >>>>> >>>>> By default, the lowest 65536 byte (10000 in hex) is protected from >>>>> mapping etc. It practically render such null dererefencing useless. >>>>> >>>>> >>>>> -- >>>>> regards, >>>>> >>>>> Mulyadi Santosa >>>>> Freelance Linux trainer and consultant >>>>> >>>>> blog: the-hydra.blogspot.com >>>>> training: mulyaditraining.blogspot.com >>>>> >>>> >>>> Hi, >>>> >>>> I tried the same with other addresses (greater than 0x10000 ) also but >>>> it is throwing the same error. >>>> Is there a way to get over this ? >>>> >>>> Thanks >>>> Vaibhav Jain >>>> >>>> >>>> >>>> _______________________________________________ >>>> Kernelnewbies mailing list >>>> [email protected] >>>> http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies >>>> >>>> Hi Vaibhav, >>> >>> This is how it can be done. Refer link >>> http://www.theknotter.net/system-memory-dumps-on-linux/ >>> >>> I have attached the modified code which disables the socket creation part >>> and dumps the output in a file. >>> >>> Regards, >>> Rohan Puri >>> >> >> >> Thanks Rohan for the code but I already have a code that reads memory >> using /dev/mem and mmap. >> Only difference is I have to manually change the starting address in >> program. The problem is whenver I give >> any System RAM address the mmap call fails with 'Operation not permitted'. >> I googled a little and found that normally >> this operation is not allowed and the kernel has to be compiled with >> CONFIG_STRICT_DEVMEM disabled to read any memory >> location in this way. I also found out about the boot option >> 'strict-devmem =0'. I tried both these options but none of them seems to >> working. >> So I am trying to figure out if there is some other setting that I need to >> change. >> I am doing this on Fedora 15 - 2.6.38 kernel. >> >> Thanks >> Vaibhav Jain >> >> > Hi Vaibhav, > > My iomem file : - > > 00000000-0000ffff : reserved > *00010000-0009f3ff : System RAM* > 0009f400-0009ffff : reserved > 000c0000-000c7fff : Video ROM > 000cc000-000ccfff : Adapter ROM > 000cd000-000cffff : pnp 00:0c > 000e0000-000effff : pnp 00:0c > 000f0000-000fffff : reserved > 000f0000-000fffff : System ROM > *00100000-cf6dffff : System RAM* > 01000000-015dadf2 : Kernel code > 015dadf3-01ab907f : Kernel data > 01bb1000-01d04fff : Kernel bss > > Now the program which i sent you, with that I am able to read the 1st part > of System RAM successfully. I am getting the operation not permitted error > from mmap for second part of System RAM. Can you verify the same on your > system. I mean are you able to read the 1st part (if your System RAM is > divided) or not ? > > Regards, > Rohan Puri > Another way to get the memory map is install crash module on your system and access the memory by accessing the new device /dev/crash instead of /dev/mem Regards, Rohan Puri
_______________________________________________ Kernelnewbies mailing list [email protected] http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
