Hi Il 26/05/23 03:31, Samuel Thibault ha scritto:
GNU Mach 1.8 ELF section header table at ffffffff80010290 biosmem: physical memory map: biosmem: 000000000000000000:00000000000009f000, available biosmem: 00000000000009fc00:0000000000000a0000, reserved biosmem: 0000000000000f0000:000000000000100000, reserved biosmem: 000000000000100000:0000000000dddde000, available biosmem: 0000000000dddde000:0000000000dde00000, reserved biosmem: 0000000000feffc000:0000000000ff000000, reserved biosmem: 0000000000fffc0000:000000000100000000, reserved vm_page: page table size: 908750 entries (85196k) vm_page: DMA: pages: 4080 (15M), free: 0 (0M) vm_page: DMA: min:500 low:600 high:1000 vm_page: DMA32: pages: 61440 (240M), free: 61207 (239M) vm_page: DMA32: min:3072 low:3686 high:6144 vm_page: DIRECTMAP: pages: 327680 (1280M), free: 297135 (1160M) vm_page: DIRECTMAP: min:16384 low:19660 high:32768 vm_page: HIGHMEM: pages: 515550 (2013M), free: 0 (0M) vm_page: HIGHMEM: min:25777 low:30933 high:51555 com 2 out of range RTC time is 2023-05-26 01:25:34 module 0: ext2fs --readonly --host-priv-port=${host-port} --device-master-port=${device-port} --multiboot-command-line=${kernel-command-line} --exec-server-task=${exec-task} -T typed ${root} $(fs-task=task-create) $(task-resume) module 1: exec /hurd/exec $(exec-task=task-create) 2 multiboot modules Kernel Double fault trap, eip 0x0 kernel: Double fault (8), code=0 Stopped at 0: no memory is assigned to address 00000000no memory is assigned to address 00000001 addb %al,0(%eax) 0x0( no memory is assigned to address 00000000 ...) 0xffffffff8107a712(0,8101d463,400ee0,ffffffff8101d49c,0) 0xffffffff8106ff27(ffffffffde739868,ffffffff8101d463,ffffffffde736fb8,0,ffffffff 8104ceec)user space <<<<<
I can't reproduce this exactly, but I remember seeing various issues with kdb and printing stacktaces on x86_64 (I've been using the qemu gdb server so far), which might cause the double fault, possibly hiding another issue.
Taking the ext2fs/exec static modules and trying to boot a ramdisk I have instead:
GNU Mach 1.8 biosmem: physical memory map: biosmem: 000000000000000000:00000000000009f000, available biosmem: 00000000000009fc00:0000000000000a0000, reserved biosmem: 0000000000000f0000:000000000000100000, reserved biosmem: 000000000000100000:00000000003ffe0000, available biosmem: 00000000003ffe0000:000000000040000000, reserved biosmem: 0000000000fffc0000:000000000100000000, reserved biosmem: 00000000fd00000000:000000010000000000, reserved vm_page: page table size: 262096 entries (24572k) vm_page: DMA: pages: 4080 (15M), free: 0 (0M) vm_page: DMA: min:500 low:600 high:1000 vm_page: DMA32: pages: 61440 (240M), free: 54554 (213M) vm_page: DMA32: min:3072 low:3686 high:6144 vm_page: DIRECTMAP: pages: 196576 (767M), free: 179955 (702M) vm_page: DIRECTMAP: min:9828 low:11794 high:19657 com 2 out of range RTC time is 2023-05-26 09:31:57 module 0: initrd $(ramdisk-create) rd0: 27541504 bytes @ffffffffc4c28000module 1: ext2fs --multiboot-command-line=${kernel-command-line} --host-priv-port=${host-port} --device-master-port=${device-port} --exec-server-task=${exec-task} -T typed gunzip:device:rd0 $(task-create) $(task-resume)
module 2: exec --device-master-port=${device-port} $(exec-task=task-create)
3 multiboot modules
task loaded: ext2fs --multiboot-command-line=console=com0
TERM=mach-gnu-color init=/bin/sh --host-priv-port=1
--device-master-port=2 --exec-server-task=3 -T typed gunzip:device:rd0
task loaded: exec --device-master-port=1start ext2fs: Unhandled exception caught by task ext2fs(ffffffffbc4fecd0), terminating
Dump of i386_saved_state ffffffffbc4f3868:RAX 0000000000000007 RBX 0000000000000006 RCX 0000000000000004 RDX 00007ffffffffe90 RSI 00007ffffffffe90 RDI 0000000000000006 RBP 00007ffffffffe80 RSP 00007fffffffee20 R8 0000000000000000 R9 0000000000000000 R10 00000000005090fc R11 0000000000000246 R12 0000000000000000 R13 00007fffffffff00 R14 0000000000000000 R15 0000000000000000
FSBASE 0000000000000000 GSBASE 0000000000000000 RIP 000000000055cd15 EFLAGS 00000202 trapno 14: Page fault, error 00000004These are printed due to a local patch I have, but anyway the ext2fs task starts. I tried with a 32-bit ramdisk as I still have to assemble the 64-bit one, but I would have expected a message about wrong ELF type or similar.
Also I don't have KDB enabled, but it seems your build has (from the "ELF section header ..." message at the beginning).
Luca
