"reserve_top_address" and the kernel virtual memory with KML.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

I have a Kernel Mode Linux running(KML). I can access kernel
virtual addresses using User Programs. I wanted to get hold of upper Kernel
memory (beyond 0xff800000 till 0xffffffff) and experiment a bit. To achieve the
same I requested for a memory hole in "start_kernel" of /init/main.c as follows:

    .....
    printk(linux_banner);
    setup_arch(&command_line);
   
    //ask for 8 MB topmost
    reserve_top_address(8388608ul);

    mm_init_owner(&init_mm, &init_task);
    setup_command_line(command_line);
    .....

The kernel image din't boot up. I might be reserving at the wrong place in code
or I might be carelessly doing something impossible. On a black screen  I got
the following error:

BUG: Int 6: CR2 00000000
    EDI C03f5000 ESI 00800000 ......
    EBX .....
    err 00000000 ...
Stack: 00010800 ....
    ......
    ......

Is there anywhere else I can plug in the "reserve_top_address" and play with the
kernel space memory ? Certain hypervisors would be doing similar trick but I am
not so sure how.

Any help would be helpful.

Regards,
Regmee


[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux