128M did not help either. Got the same kernel panic with error
"unknown_bootoption+0x0/0x1f0"
On Sat, Aug 30, 2008 at 11:48 PM, amit regmi <[EMAIL PROTECTED]> wrote:

> On Sat, Aug 30, 2008 at 10:38 PM, Peter Teoh <[EMAIL PROTECTED]>wrote:
>
>>
>> On Sat, Aug 30, 2008 at 1:13 PM, amit regmi <[EMAIL PROTECTED]> wrote:
>>
>
>> > 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);
>> >
>>
> Probably this was too early to have called "reserve_top_address" .
> I tried shifting this call to the place right before the mem_init() in the
> same function.
>
>     vfs_caches_init_early();
>     cpuset_init_early();
>
>     //ask for 8 MB topmost
>     reserve_top_address(8388608ul);
>
>     mem_init();
>     enable_debug_pagealloc();
>
>  This time I got a kernel panic instead and the error said
> "unknown_bootoption+0x0/0x1f0".
>
> according to:
>>
>> http://www.ussg.iu.edu/hypermail/linux/kernel/0806.2/2629.html
>>
>> it seemed to indicate that the minimum size for reservation (for
>> purpose of hypervisor implementation) is 128M.   So could that be the
>> reason why 8MB is not possible?
>
>
> I think it says that the default 128 MB size allocated for  "vmalloc" can
> be altered with the "size" parameter.
> Again, reserve_top_address also has an impact on the amount of memory given
> to vmalloc as it resizes the
> __VMALLOC_RESERVE  parameter. I am sure it 128M could be a thing to try
> out.
>
>>
>> >     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.
>>
>
> Google says  Xen makes use of "reserve_top_address". May be they can help.
>
> -Regmee
>

Reply via email to