Adam Lackorzynski wrote:
On Wed Aug 09, 2006 at 17:47:16 +0200, Daniel Vandersee wrote:
Adam Lackorzynski wrote:
Please enable "Use ldso for loading" in the L4Linux configuration. Should also be default by tomorrow.
Thank you, but now the loader complains about a missing libld-l4.s.so which I can't find anywhere.
libld-l4.s.so is built in the ldso package.
I dowloaded the ldso package and recompiled l4linux (with ldso) as well as l4env, but I'm afraid this was wasn't the problem - I still get the same error.
loader | vmlinuz26.ux: Starting application using libld-l4.s.so loader | vmlinuz26.ux,#f: Loading binary fuxfprov| open "/home/user/ext/l4env_060809/DROPS/bin/x86_586/l4v2/libld-l4 fuxfprov: .s.so" by D.02 loader | vmlinuz26.ux,#f: Loading ldso loader | vmlinuz26.ux,#f: Starting libld-l4.s.so at 00013e40 via 0000bba8 fuxfprov| open "./libloader.s.so" by F.00 fuxfprov| Can't open "./libloader.s.so": -2 fuxfprov| open "/home/user/ext/l4env_060809/DROPS/bin/x86_586/l4v2/./libloa fuxfprov: der.s.so" by F.00 fuxfprov| open "vmlinuz26.ux" by F.00 fuxfprov| Can't open "vmlinuz26.ux": -2 fuxfprov| open "/home/user/ext/l4env_060809/DROPS/bin/x86_586/l4v2/vmlinuz2 fuxfprov: 6.ux" by F.00 l4lx | ======> L4Linux 2.6 starting... <======== l4lx | Linux version 2.6.17-l4 (user@kubuntu) (gcc-Version 3.3.6 (Ubuntu 1: l4lx : 3.3.6-8ubuntu1)) #4 Wed Aug 9 18:41:29 CEST 2006 l4lx | Binary name: vmlinuz26.ux l4lx | Kernel command line (9 args): mem=64M load_ramdisk=1 ramdisk_size=163 l4lx : 84 root=1:0 l4env_rd=/home/user/ext/l4env_060809/DROPS/bin/x86_58 l4lx : 6/l4v2/rd1 panicblink=0 lang=de video=l4fb:640x400@16,xpos:10,ypos:10 l4lx : ,refreshsleep:150,title:DamnSmallLinux noirq l4lx | Image: 00400000 - 0068f000 [2620 KiB]. l4lx | Areas: Text: 00400000 - 005c6000 [1816kB] (a bit longer) l4lx | Data: 005c6000 - 006025ac [241kB] l4lx | Initdata: 00606000 - 00626000 [128kB] l4lx | BSS: 00626000 - 0068d1c0 [412kB] l4lx | l4lx_thread_create: Created thread 0f.03 (tamer) l4lx | Using tamed mode. l4lx | l4lx_thread_create: Created thread 0f.04 (server) l4lx | main thread will be 0f.04 l4lx | l4env_register_pointer_section: addr = 00604000 size = 569344 l4lx | sec-w-init: virt: 0x00604000 to 0x0068efff [556 KiB] l4lx | Noncontiguous region for sec-w-init l4lx | sec-w-init: Number of physical regions: 2, 569344 Bytes l4lx | sec-w-init: 1: Phys: 0x0141c000 to 0x0148d000, Size: 462848 l4lx | sec-w-init: 2: Phys: 0x00ae6000 to 0x00b00000, Size: 106496 l4lx | l4env_linux_startup thread 4. l4lx | main thread: received startup message. l4lx | Main thread running, waiting... l4lx | setup_l4env_memory: Forcing superpages for main memory l4lx | Main memory size: 64MB l4lx | Main memory: virt: 0x00800000 to 0x047fffff [65536 KiB] l4lx | Main memory: Number of physical regions: 1, 67108864 Bytes l4lx | Main memory: 1: Phys: 0x0a400000 to 0x0e400000, Size: 67108864 l4lx | Filling lower ptabs... l4lx | Done (1260 entries). l4lx | l4env_rd_path: /home/user/ext/l4env_060809/DROPS/bin/x86_586/l4v2 l4lx : /rd1 l4lx | Loading: /home/user/ext/l4env_060809/DROPS/bin/x86_586/l4v2/rd1 fuxfprov| open "/home/user/ext/l4env_060809/DROPS/bin/x86_586/l4v2/rd1" by fuxfprov: F.04 l4lx | INITRD: Size of RAMdisk is 16384KiB l4lx | RAMdisk from 04800000 to 05800000 [16384KiB] l4lx | l4lx_thread_create: Created thread 0f.05 (timer.i0) DMphys | ds 81, client F.00, rights 0x0003, has 0x0001 DMphys | [7.0] dm_phys/server/src/map.c:620:if_l4dm_generic_fault_component(): DMphys | DMphys: bad permissions l4lx | L4RM: dataspace at 0x00400000-0x005c5fff, id 81 at 7.00 l4lx | L4RM: dataspace manager call failed ("permission denied") l4lx | L4RM: [PF] write at 0x00402860, ip 0040b2bc, src F.02 l4lx | [F.0] l4rm/lib/src/pagefault.c:78:__unknown_pf(): l4lx | unhandled page fault
--PANIC, 'g' for exit-------------------------------ESP:00629d20 EIP:a00bdcd3 (f.00) jdb: ^
Kind regards, Daniel
Hi,
Daniel Vandersee wrote: [...]
I dowloaded the ldso package and recompiled l4linux (with ldso) as well as l4env, but I'm afraid this was wasn't the problem - I still get the same error.
[...]
DMphys | ds 81, client F.00, rights 0x0003, has 0x0001 DMphys | [7.0] dm_phys/server/src/map.c:620:if_l4dm_generic_fault_component(): DMphys | DMphys: bad permissions l4lx | L4RM: dataspace at 0x00400000-0x005c5fff, id 81 at 7.00 l4lx | L4RM: dataspace manager call failed ("permission denied") l4lx | L4RM: [PF] write at 0x00402860, ip 0040b2bc, src F.02 l4lx | [F.0] l4rm/lib/src/pagefault.c:78:__unknown_pf(): l4lx | unhandled page fault
You could try the option all_sects_writable in your loader script for L4Linux. This works for me with Qemu.
Regards, Andi
Andreas Niederl wrote:
You could try the option all_sects_writable in your loader script for L4Linux. This works for me with Qemu.
Thank you, this works so far. Now L4Linux begins to start, but something different is still going wrong:
Linux version 2.6.17-l4 (user@ubuntu) (gcc-Version 3.3.6 (Ubuntu 1:3.3.6-8ubuntu1)) #5 Thu Aug 10 01:26:40 CEST 2006 dm_phys: 0000000000800000 - 0000000004800000 [65536 KiB] (usable) 64MB memory available. INITRD: 04800000 - 05800000 Allocating PCI resources starting at 10000000 (gap: 04800000:fb800000) Built 1 zonelists Kernel command line: mem=64M load_ramdisk=1 ramdisk_size=16384 root=1:0 l4env_rd=/home/user/ext/l4env_060809/DROPS/bin/x86_586/l4v2/rd1 panicblink=0 lang=de video=l4fb:640x400@16,xpos:10,ypos:10,refreshsleep:150,title:DamnSmallLinux console=ttyLv0 Initializing CPU#0 l4lx_irq_init: l4lx_irq_max = 18 PID hash table entries: 512 (order: 9, 2048 bytes) Using l4rtc for high-res timesource l4lx_irq_timer_startup(0) timer_irq_thread: Starting timer IRQ thread. Console: colour dummy device 80x25 l4ser_init_ports l4ser: vkey_irq not set - input disabled! Dentry cache hash table entries: 16384 (order: 4, 65536 bytes) Inode-cache hash table entries: 8192 (order: 3, 32768 bytes) Memory: 64784k/73728k available (1553k kernel code, 692k reserved, 519k data, 128k init, 0k highmem) Calibrating delay using timer specific routine.. 2769.15 BogoMIPS (lpj=13845760) Mount-cache hash table entries: 512 CPU: L1 I cache: 16K, L1 D cache: 16K CPU: L2 cache: 256K CPU: Intel(R) Celeron(TM) CPU 1133MHz stepping 01 SMP alternatives: switching to UP code checking if image is initramfs...it isn't (bad gzip magic numbers); looks like an initrd INITRD: Freeing memory. NET: Registered protocol family 16 Setting up standard PCI resources NET: Registered protocol family 2 l4lx | l4lx_thread_create: Created thread 0f.06 (Idler) IP route cache hash table entries: 1024 (order: 0, 4096 bytes) TCP established hash table entries: 4096 (order: 2, 16384 bytes) TCP bind hash table entries: 2048 (order: 1, 8192 bytes) TCP: Hash tables configured (established 4096 bind 2048) TCP reno registered Initializing Cryptographic API io scheduler noop registered io scheduler anticipatory registered (default) io scheduler deadline registered io scheduler cfq registered l4lx | Starting L4FB via CON con | vc_loop(): vc[2] running as C.05 l4lx | l4lx_thread_create: Created thread 0f.07 (L4ConInput) input: l4input key as /class/input/input0 input: l4input mouse as /class/input/input1 con | vc_open_out(): vc[2] 640x480@16, gmode:0x15 l4lx | l4fbcon: 640x462 2bypp, size: 593920 l4lx | l4lx_thread_create: Created thread 0f.08 (CON refresher) l4fb: Con framebuffer at 0x04800000, size 580k l4fb: mode is 640x462x16, linelength=1280, pages=0 l4fb: directcolor: size=0:5:6:5, shift=0:11:5:0 Console: switching to colour frame buffer device 80x28 l4fb0: l4fb L4 frame buffer device (refresh: 150ms) L4 serial driver l4ser_init_ports l4ser: vkey_irq not set - input disabled! ttyLv0 at MMIO 0x1 (irq = 0) is a L4 RAMDISK driver initialized: 16 RAM disks of 16384K size 1024 blocksize Trap: 13: 0000 [#1] Modules linked in: CPU: 0 EIP: 0000:[<00514c7a>] Not tainted VLI EFLAGS: 00210206 (2.6.17-l4 #5) EIP is at i8042_flush+0x1a/0xa0 eax: 00808000 ebx: 03dc4408 ecx: 00080000 edx: 00000064 esi: 00000000 edi: 00000001 ebp: 00809e68 esp: 00809e5c ds: 1000 es: 4000 ss: 0000 Process swapper (pid: 1, threadinfo=00808000 task=00805bb0) Stack: 03dc4408 00000000 005dc9d4 00809e74 00515539 03dc4408 00809e88 0061bd41 03dc4408 00000000 005dc9d4 00809e94 005115c3 03dc4400 00809eac 0050fa14 03dc4408 00000000 00809ecc 0050fa60 00809ebc 0050fa70 005dc9d4 03dc4408 Call Trace: <0040a3ec> show_stack_log_lvl+0x7c/0xa0 <0040a556> show_registers+0xf6/0x160 <0040a753> die+0xe3/0x1d0 <00000000> _start+0xffc00000/0x50 <00515539> i8042_controller_init+0x9/0x100 <0061bd41> i8042_probe+0x21/0x100 <005115c3> platform_drv_probe+0x13/0x20 <0050fa14> driver_probe_device+0x54/0xa0 <0050fa70> __device_attach+0x10/0x20 <0050f178> bus_for_each_drv+0x58/0x70 <0050fad4> device_attach+0x54/0x60 <0050f295> bus_add_device+0x25/0x90 <0050e3ba> device_add+0xda/0x130 <0050e423> device_register+0x13/0x20 <005113f5> platform_device_add+0xa5/0x160 <0061be87> i8042_init+0x67/0x90 <0060a7d1> do_initcalls+0x31/0x100 <0060a8bc> do_basic_setup+0x1c/0x20 <00400220> init+0x30/0x140 <004073f9> kernel_thread_start+0x29/0x30 <004073ce> ret_kernel_thread_start+0x6/0x8 Code: fc c9 c3 8d b4 26 00 00 00 00 8d bc 27 00 00 00 00 55 89 e5 57 56 31 f6 53 e8 f3 e8 ee ff 89 c7 e8 3c e6 ee ff 8b 15 20 c9 5d 00 <ec> a8 01 88 c3 74 60 68 de 46 03 00 e8 a5 36 fd ff 8b 15 24 c9 EIP: [<00514c7a>] i8042_flush+0x1a/0xa0 SS:ESP 007b:00809e54 <0>Kernel panic - not syncing: Attempted to kill init! panic: going to sleep forever, bye
On Thu Aug 10, 2006 at 01:53:56 +0200, Daniel Vandersee wrote:
Andreas Niederl wrote:
You could try the option all_sects_writable in your loader script for L4Linux. This works for me with Qemu.
Thank you, this works so far. Now L4Linux begins to start, but something different is still going wrong:
ttyLv0 at MMIO 0x1 (irq = 0) is a L4 RAMDISK driver initialized: 16 RAM disks of 16384K size 1024 blocksize Trap: 13: 0000 [#1] Modules linked in: CPU: 0 EIP: 0000:[<00514c7a>] Not tainted VLI EFLAGS: 00210206 (2.6.17-l4 #5) EIP is at i8042_flush+0x1a/0xa0 eax: 00808000 ebx: 03dc4408 ecx: 00080000 edx: 00000064 esi: 00000000 edi: 00000001 ebp: 00809e68 esp: 00809e5c ds: 1000 es: 4000 ss: 0000 Process swapper (pid: 1, threadinfo=00808000 task=00805bb0) Stack: 03dc4408 00000000 005dc9d4 00809e74 00515539 03dc4408 00809e88 0061bd41 03dc4408 00000000 005dc9d4 00809e94 005115c3 03dc4400 00809eac 0050fa14 03dc4408 00000000 00809ecc 0050fa60 00809ebc 0050fa70 005dc9d4 03dc4408 Call Trace: <0040a3ec> show_stack_log_lvl+0x7c/0xa0 <0040a556> show_registers+0xf6/0x160 <0040a753> die+0xe3/0x1d0 <00000000> _start+0xffc00000/0x50 <00515539> i8042_controller_init+0x9/0x100 <0061bd41> i8042_probe+0x21/0x100 <005115c3> platform_drv_probe+0x13/0x20 <0050fa14> driver_probe_device+0x54/0xa0 <0050fa70> __device_attach+0x10/0x20 <0050f178> bus_for_each_drv+0x58/0x70 <0050fad4> device_attach+0x54/0x60 <0050f295> bus_add_device+0x25/0x90 <0050e3ba> device_add+0xda/0x130 <0050e423> device_register+0x13/0x20 <005113f5> platform_device_add+0xa5/0x160 <0061be87> i8042_init+0x67/0x90 <0060a7d1> do_initcalls+0x31/0x100 <0060a8bc> do_basic_setup+0x1c/0x20 <00400220> init+0x30/0x140 <004073f9> kernel_thread_start+0x29/0x30 <004073ce> ret_kernel_thread_start+0x6/0x8 Code: fc c9 c3 8d b4 26 00 00 00 00 8d bc 27 00 00 00 00 55 89 e5 57 56 31 f6 53 e8 f3 e8 ee ff 89 c7 e8 3c e6 ee ff 8b 15 20 c9 5d 00 <ec> a8 01 88 c3 74 60 68 de 46 03 00 e8 a5 36 fd ff 8b 15 24 c9 EIP: [<00514c7a>] i8042_flush+0x1a/0xa0 SS:ESP 007b:00809e54 <0>Kernel panic - not syncing: Attempted to kill init! panic: going to sleep forever, bye
This is the keyboard driver which probably tries to do some in/outs which will not work on Fiasco-UX. You have to disable it (Device Drivers -> Input Device suppor -> Hardware I/O prots -> ...).
Adam
l4-hackers@os.inf.tu-dresden.de