Am 15. Januar 2017 13:16:22 MEZ schrieb sge...@aol.com: >Hi, > >there seems to be a problem with usermode linux when started >with an initial ramdisk (argument initrd=file). Here is what >happens: > >------------------------------------ > >Locating the bottom of the address space ... 0x1000 >Locating the top of the address space ... Checking that ptrace can >change system call numbers...0xc0000000 >Core dump limits : > soft - 0 > hard - NONE >OK >Checking syscall emulation patch for ptrace...OK >Checking advanced syscall emulation patch for ptrace...OK >Checking environment variables for a tempdir...none found >Checking if /dev/shm is on tmpfs...OK >Checking PROT_EXEC mmap in /dev/shm...OK >Adding 8470528 bytes to physical memory to account for exec-shield gap >kmsg_dump: ><1>bootmem alloc of 140 bytes failed! ><0>Kernel panic - not syncing: Out of memory ><4>CPU: 0 PID: 0 Comm: swapper Not tainted 4.9.0-um #3 ><6>Stack: ><4> 081eb922 081eb922 0822d547 00000000 08222000 00000000 0817fe48 >00000000 ><4> 0822bf6c 080bd1a7 00000007 0829c600 081f113d 0822bfbc 082220fc >00000000 ><4> 00000000 00000000 0805393d 081f113d 0000008c 0804c88e 0000008c >00000080 ><6>Call Trace: ><6> [<0805cffb>] ? ><4>show_stack+0x9d/0x157 ><6> [<0817fe48>] ? ><4>dump_stack+0x23/0x2b ><6> [<080bd1a7>] ? ><4>panic+0x9e/0x1b4 ><6> [<0805393d>] ? ><4>__alloc_bootmem+0x3f/0x43 ><6> [<0804c88e>] ? ><4>read_initrd+0x6a/0x101 ><6> [<08096fa5>] ? ><4>kmsg_dump_register+0x37/0x65 ><6> [<0805e8a9>] ? ><4>uml_finishsetup+0x27/0x3b ><6> > >--------------------------------- > > >Function read_initrd() calls alloc_bootmem(), but at this point >memory hasn't been initialized yet. > >A quick solution is to move uml_postsetup() (the function >that calls read_initrd()) right after the memory has been >initialized. This may be wrong since uml_postsetup() may call >other functions besides read_initrd(), but worked for me: >the initial ramdisk is loaded and init run. > > >--- linux-4.9.0/arch/um/kernel/um_arch.c 2016-12-11 20:17:54.000000000 >+0100 >+++ linux-4.9.0-um/arch/um/kernel/um_arch.c 2017-01-15 >11:16:32.000000000 +0100 >@@ -231,7 +231,7 @@ > atomic_notifier_chain_register(&panic_notifier_list, > &panic_exit_notifier); > >- uml_postsetup(); >+ // uml_postsetup(); > > new_thread_handler(); > } >@@ -340,6 +340,7 @@ > { > stack_protections((unsigned long) &init_thread_info); > setup_physmem(uml_physmem, uml_reserved, physmem_size, highmem); >+ uml_postsetup(); > mem_total_pages(physmem_size, iomem_size, highmem); > > paging_init(); > >------------------------------------------------------------------------------ >Developer Access Program for Intel Xeon Phi Processors >Access to Intel Xeon Phi processor-based developer platforms. >With one year of Intel Parallel Studio XE. >Training and support from Colfax. >Order your platform today. http://sdm.link/xeonphi >_______________________________________________ >User-mode-linux-devel mailing list >User-mode-linux-devel@lists.sourceforge.net >https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel
Hi, I don't think this is correct. How much memory do you assign your uml instance? Your initial ramdisk is probably bigger than your assigned memory size? With kind regards Thomas ------------------------------------------------------------------------------ Developer Access Program for Intel Xeon Phi Processors Access to Intel Xeon Phi processor-based developer platforms. With one year of Intel Parallel Studio XE. Training and support from Colfax. Order your platform today. http://sdm.link/xeonphi _______________________________________________ User-mode-linux-devel mailing list User-mode-linux-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel