Hi all, 

I was testing l4linux server as input server and was planning to run it without io package. For this purpose I wanted to rebuild the l4linux kernel with input server option and "without use pci virtual bus" option. My purpose was to see whether the kernel could reach the real IO ports and the result was off-course as expected a kernel panic... My question is how the io package is allowed to reach the IO ports but not the l4linux kernel? Please kindly see the kernel output and the corresponding lua script below: 


The lua script:

require("L4");

local lxname = "vmlinuz.android";
local l = L4.default_loader;



local hid = l:new_channel(); 
local linux_caps = {
  log = L4.Env.log:m("rws");
  -- vbus = io_caps.linux_bus,
  --rtc = rtc_caps.rtc,
  ev = hid:svr(),
  rom = L4.Env.rom,
};

l:start(
        {
                caps = linux_caps,
        },
"rom/vmlinuz.android mem=256M l4-input-srv.enable=1 console=ttyLv0 ramdisk=rom/openwrt-x86-alix2-rootfs.tar.gz root=1:0 ramdisk_size=32768 l4x_rd=rom/openwrt-x86-alix2-rootfs.tar.gz init=/etc/preinit");


Kernel output: 

NET: Registered protocol family 16
vmlinuz.| Invalid IO-Port access at pc = 007718f1 port=0xcfb
vmlinuz.| Die message: Trap: 14
Trap: 14: 0000 [#1] 
Modules linked in:
Pid: 1, comm: swapper Not tainted 3.6.0-l4-svn27 #3  
EIP: 0000:[<007718f1>] EFLAGS: 00000246 CPU: 0
EIP is at pci_direct_probe+0x53/0x1d8
EAX: 00417001 EBX: 00000003 ECX: 00110000 EDX: 00000cfb
ESI: 00000001 EDI: 0077174c EBP: 10437f78 ESP: 10437f5c
 DS: 0000 ES: 0000 FS: 0023 GS: 0000 SS: 0023
Process swapper (pid: 1, ti=10436000 task=10435bc0 task.ti=10436000)
Stack:
 10437f64 00000000 0070ff6b 00000000 00441a4c 00000003 00000000 10437f88
 00771756 10454ed8 00000003 10437fc0 0040005a 10437fb0 00030003 007362d4
 006e8588 00000000 10bffd86 10bffd81 10bffd92 00000001 00000003 00000049
Call Trace:
 [<00441a4c>] ? suspend_set_ops+0x3c/0x50
 [<00771756>] pci_arch_init+0xa/0x50
 [<0040005a>] do_one_initcall+0x2a/0x170
 [<0075e698>] kernel_init+0xd1/0x166
 [<0075e119>] ? do_early_param+0x74/0x74
 [<0075e5c7>] ? start_kernel+0x298/0x298
 [<00407dd4>] kernel_thread_start+0x24/0x30
Code: 00 00 00 00 c7 04 24 6b ff 70 00 e8 3a 39 cb ff 85 c0 0f 84 8b 00 00 00 e8 3d 1e c9 ff 89 c6 e8 c6 21 c9 ff ba fb 0c 00 00 b0 01 <ee> b2 f8 ed 89 45 f4 b8 00 00 00 80 ef ed 31 db 3d 00 00 00 80
EIP: [<007718f1>] pci_direct_probe+0x53/0x1d8 SS:ESP 0023:10437f5c
---[ end trace 4eaa2a86a8e2da22 ]---
Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b

panic: going to sleep forever, bye
vmlinuz.| panic: going to sleep forever, bye



Best regards,