Hi,
You are right, I got confused about those addresses, my bad. At least now I
know that config is the correct one and I don't have to tinker with it.
I'm back to a kernel panic from the inmate when booting the cell. It's
similar to the one I had earlier, not sure yet of what the problem may be.
Created cell "linux-2"
Page pool usage after cell creation: mem 406/32211, remap 16392/131072
Cell "linux-2" can be loaded
CPU 9 received SIPI, vector 100
Started cell "linux-2"
CPU 8 received SIPI, vector 100
No EFI environment detected.
early console in extract_kernel
input_data: 0x000000000275c308
input_len: 0x00000000008b0981
output: 0x0000000001000000
output_len: 0x0000000001fccb30
kernel_total_size: 0x0000000001e28000
needed_size: 0x0000000002000000
trampoline_32bit: 0x000000000009d000
Decompressing Linux... Parsing ELF... done.
Booting the kernel.
[ 0.000000] Linux version 6.2.0-rc3 (root@mp-LINUX-DESKTOP)
(x86_64-buildroot -linux-gnu-gcc.br_real (Buildroot 2023.11) 12.3.0,
GNU ld (GNU Binutils) 2.40) # 2 SMP PREEMPT_DYNAMIC Fri Jan 12
17:36:57 CET 2024
[ 0.000000] Command line: earlyprintk=ttyS0,115200
[ 0.000000] KERNEL supported cpus:
[ 0.000000] Intel GenuineIntel
[ 0.000000] AMD AuthenticAMD
[ 0.000000] x86/fpu: Supporting XSAVE feature 0x001: 'x87 floating point
regi sters'
[ 0.000000] x86/fpu: Supporting XSAVE feature 0x002: 'SSE registers'
[ 0.000000] x86/fpu: Supporting XSAVE feature 0x004: 'AVX registers'
[ 0.000000] x86/fpu: xstate_offset[2]: 576, xstate_sizes[2]: 256
[ 0.000000] x86/fpu: Enabled xstate features 0x7, context size is 832
bytes, using 'compacted' format.
[ 0.000000] signal: max sigframe size: 1360
[ 0.000000] BIOS-provided physical RAM map:
[ 0.000000] BIOS-e801: [mem 0x0000000000000000-0x000000000009efff] usable
[ 0.000000] printk: bootconsole [earlyser0] enabled
[ 0.000000] NX (Execute Disable) protection: active
[ 0.000000] extended physical RAM map:
[ 0.000000] reserve setup_data: [mem
0x0000000000000000-0x0000000000001fff] u sable
[ 0.000000] reserve setup_data: [mem
0x0000000000002000-0x000000000000212b] u sable
[ 0.000000] reserve setup_data: [mem
0x000000000000212c-0x000000000009efff] u sable
[ 0.000000] DMI not present or invalid.
[ 0.000000] Hypervisor detected: Jailhouse
[ 0.000000] tsc: Detected 3393.624 MHz processor
[ 0.000017] .text .data .bss are not marked as E820_TYPE_RAM!
[ 0.005745] last_pfn = 0x2e28 max_arch_pfn = 0x400000000
[ 0.011025] x86/PAT: PAT support disabled because CONFIG_X86_PAT is
disabled in the kernel.
[ 0.019362] x86/PAT: Configuration [0-7]: WB WT UC- UC WB WT UC- UC
[ 0.034867] Using GB pages for direct mapping
[ 0.039193] Kernel panic - not syncing: alloc_low_pages: can not alloc
memory
[ 0.046183] CPU: 0 PID: 0 Comm: swapper Not tainted 6.2.0-rc3 #2
[ 0.052176] Call Trace:
[ 0.054606] <TASK>
[ 0.056691] ? dump_stack_lvl+0x33/0x4e
[ 0.060510] ? panic+0x157/0x303
[ 0.063723] ? sprintf+0x56/0x80
[ 0.066936] ? alloc_low_pages+0x70/0x1a0
[ 0.070930] ? phys_pmd_init+0x1fc/0x2eb
[ 0.074839] ? phys_pud_init+0x116/0x2d3
[ 0.078744] ? __kernel_physical_mapping_init+0x11a/0x290
[ 0.084128] ? init_memory_mapping+0x25e/0x3b0
[ 0.088558] ? init_range_memory_mapping+0xe7/0x145
[ 0.093417] ? init_mem_mapping+0x242/0x298
[ 0.097585] ? setup_arch+0x74e/0xcbd
[ 0.101231] ? start_kernel+0x66/0x8b7
[ 0.104965] ? load_ucode_bsp+0x43/0x11b
[ 0.108873] ? secondary_startup_64_no_verify+0xe0/0xeb
[ 0.114085] </TASK>
[ 0.116255] ---[ end Kernel panic - not syncing: alloc_low_pages: can
not all oc memory ]---
Thank you for your continuous support,
Michele
Il giorno sabato 13 gennaio 2024 alle 00:05:43 UTC+1 Ralf Ramsauer ha
scritto:
> Hi Michele,
>
> On 12/01/2024 14:07, Michele Pescapè wrote:
> > jailhouse cell load linux-2 linux-loader.bin -a 0x0
> > ../buildroot-2023.11/output/images/bzImage -a 0xffbe00 parameters -a
> 0x1000
> > jailhouse cell start linux-2
> >
> > I take it the kernel is loaded at 0xffbe00 which is right at the edge of
> > the low ram region. In fact after issuing the cell load command and
> > adjusting the path for the loader I get JAILHOUSE_CELL_LOAD: Invalid
> > argument.
>
> Just tested cell-linux in a qemu machine, there it works, with pretty
> similar addresses, which got me confused.
>
> After double-checking it: 0xffb.e00 is *not* at the edge of low mem:
>
> Low mem is 0x000.000 -- 0x0ff.fff
> Comm region is 0x100.000 -- 0x100.fff
>
> 0xffb.e00 is (obviously) way above.
>
> Please try to set your high mem's .virt_start to 0x200000. Then,
> 0xffbe00 is offsetted ~16MB inside your highmem, and it should work!
>
> IOW:
>
> /* high RAM */
> {
> .phys_start = 0x42300000,
> .virt_start = 0x200000,
> .size = 0x11000000,
> .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE |
> JAILHOUSE_MEM_EXECUTE |
> JAILHOUSE_MEM_LOADABLE,
> },
>
> Thanks
> Ralf
>
--
You received this message because you are subscribed to the Google Groups
"Jailhouse" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/jailhouse-dev/6712361a-eaef-49cc-8a72-79da2c434169n%40googlegroups.com.