Problems with l4linux

Valery V. Sedletski _valerius at mail.ru
Thu Oct 16 16:21:23 CEST 2008


>On Tue Oct 14, 2008 at 22:04:49 +1300, Valery V. Sedletski wrote:
>> I have Mandriva 2008.0 distribution.
>> I compiled l4linux and got some problems with it. Maybe anyone knows
>> what's wrong with the configuration?
>> First, the problem is with X11 (X.Org), when I'm launching X11 by
>> typing startx, there is an error 
>> 
>> tal server error:
>> xf86EnableIOPorts: failed to set IOPL for I/O (Invalid argument)
>> 
>> I compiled in the L4con/DOpE stubs but X11 don't work. On ordinary
>> Linux Kernel it works well. I tried to use a fbdev driver in X.Org.
>
>fbdev is a driver that will work. The problem is that X wants to have IO
>privileges which L4Linux does not have. This is actually feature rather
>than a bug. Why should X need IO privileges for just running the fbdev
>driver? Anyway, add 'allow_cli' in the loader config script to the
>L4Linux load line, and 'task modname "loader" allow_cli' to the roottask
>cmdline and it should give L4Linux/X the rights it likes to have.

I have these. My bootloader config is like this:

title L4Linux 2.6 [console]
kernel $(L4)\bootstrap
modaddr 0x02000000
module $(L4)\fiasco $(FIASCOARGS)
module $(L4)\sigma0
module $(L4)\roottask -symbols -lines task modname "loader" allow_cli task modname "bmodfs" attached 7 modules
module $(L4)\fiasco_symbols
module $(L4)\fiasco_lines
module $(PN)\names
module $(PN)\log --prio 0xA1 --buffer 0
module $(PN)\dm_phys
module $(PN)\simple_ts -t 380
module $(PN)\rtc
module $(PN)\l4io
module $(PN)\bmodfs
  module $(PN)\libloader.s.so
  module $(PN)\libld-l4.s.so
  module $(PN)\run
  module $(CFG)\run.cfg
  module $(LX)\vmlinuz26
  module $(CFG)\l4linux26.cfg
  module $(LX)\initrd.img
module $(PN)\l4con
module $(PN)\loader --fprov=BMODFS run.cfg l4linux26.cfg
vbeset $(VMODE)

and I have the following loader config file:

task "vmlinuz26" "mem=1800M no-scroll video=l4fb:refreshsleep:200 l4fb.nograb=1 load_ramdisk=1 ramdisk_size=4096 
root=/dev/sda9 l4env_rd=(cd)/lx/initrd.img panicblink=0" 
  allow_cli
  all_sects_writable
  priority 0xA0

My system is on /dev/sda9 (a partition on SATA harddisk). I boot it from a CD-ROM with L4 files, linux kernel and initrd on it.
Here, removing "all_sects_writable" makes no difference. What interesting, with these settings the system is loading, the only 
warning a system gives is a warning that can't sync hardware clock with system timer, iopl(3) call failed; and also I cannot 
start X11. But access to eg. disks works.
 
>> Also, each time I access /dev/null, the message is displayed that
>> access is denied.
>
>How do you try to access it? /dev/null should look like this:
>0 crw-rw-rw- 1 root root 1, 3 Jan  1 00:00 /dev/null

yes, it appeared that the permissions for /dev/null were crw-r--r--, so users, other than root, have not write permission
My fault... but I thought it something related with X11 not starting.

>> Third, I got PCMCIA GPRS modem to power up and register in a GSM
>> network (power Led is on and Network available Led is flashing). This
>> modem appears to an OS like ordinary PCMCIA comm port, but minicom
>> does not react to AT commands, though, PCMCIA stack detected the card,
>> but did not enabled ttyS0 and ttyS1 ports on the card. It seems I
>> loaded all PCMCIA stack modules and hotplug support. Except for
>> serial_cs module which warns that "no high memory space available!".
>> When I did configuring the linux Kernel, the build system did not give
>> me a possibility to specify high memory up to 4 Gb. What should I do
>> with it?
>
>Is the modem really using ttyS0? ttyS0 is used by Fiasco for the serial
>console and thus not available to L4Linux (or any other app). You can
>specify '-noserial' on the Fiasco command line to disable the usage of
>ttyS0.
 
Yes, the modem has two comm ports that could be accessed equally. In normal Linux
they are ttyS0 and ttyS1. I removed "-serial" option from bootstrap command line and changed
"-serial" to "-noserial" in the command line of fiasco. But still no result. I created /dev/ttyS0 by
"mknod /dev/ttyS0 c 4 64" and likewise for ttyS1. When I tried to launch minicom, it says that
no such device or address. After I did "modprobe serial_cs", minicom started but it still does not 
react to AT commands, so it seems that serial driver don't work. Maybe, serial_cs is wrong driver
or this is the result of having not all I/O privileges?

>> Fourth, I thied a wifi MiniPCI card Intel PRO/Wireless 2200 to get
>> working in l4linux. I tried to load all wifi modules like in ordinary
>> Linux kernel on the same machine, but when I trying to make the
>> network interface up, it says that device does not exists. When I
>> check dmesg output, there is a message that a firmware could not be
>> loaded. I unchecked the checkbox "Prevent the firmware from being
>> built" and "Do not enable drivers which require firmware loading" and
>> it seems that firmware must be built. The firmware is in /lib/firmware
>> and is called ipw2200-bss.fw. What should I do to get firmware loaded?
>
>The FW_LOADER config option is not enabled. I guess this needs to be so.

I had CONFIG_FW_LOADER enabled but there was "CONFIG_FW_LOADER=m",
not "CONFIG_FW_LOADER=y". I changed this option to the latter and recompiled 
the kernel, but firmware still not loading. So, it won't help. The error is like this:

Oct 17 15:10:49 localhost kernel: ipw2200: Intel(R) PRO/Wireless 2200/2915 Network Driver, 1.2.2kmprq
Oct 17 15:10:49 localhost kernel: ipw2200: Copyright(c) 2003-2006 Intel Corporation
Oct 17 15:10:49 localhost kernel: __l4x_ioremap: Requested region at b8006000 [0x1000 Bytes]
Oct 17 15:10:49 localhost kernel: __l4x_ioremap: Mapping physaddr b8006000 [0x1000 Bytes, b8006000+001000] to 
3f58a000+000000
Oct 17 15:10:49 localhost kernel: ipw2200: Detected Intel PRO/Wireless 2200BG Network Connection
Oct 17 15:10:49 localhost kernel: firmware: requesting ipw2200-bss.fw
Oct 17 15:11:49 localhost kernel: ipw2200: ipw2200-bss.fw request_firmware failed: Reason -2
Oct 17 15:11:49 localhost kernel: ipw2200: Unable to load firmware: -2
Oct 17 15:11:49 localhost kernel: ipw2200: failed to register network device
Oct 17 15:11:49 localhost kernel: ipw2200: probe of 0000:06:05.0 failed with error -5

-- This is from dmesg output. Maybe, I missed something other?

>> And the last, I tried to build l4linux under l4linux itself. The build
>> is generally working, except for when doing "make modules_install"
>> depmod crashes. Should I report these errors or they are known
>> problems?
>
>Is it depmod or something different? depmod should work as Debian
>systems running it on every boot-up. Please report, I'll try to fix as I
>can.

Yes, I compiled the kernel and did "make modules_install". It copied modules to
/lib/modules and started to make files describing the modules. Then a set of messages
with call trace appeared and a message that "depmod killed". What is interesting, depmod worked when 
the number of modules was relatively small. But when it was more than 700 modules, it crashed. 
What should I do to report the error? The messages are at linux console, not on commport, so is there
a way to copy these messages? (The only way I see is to copy the parts of messages from screen 
using gpm mouse server).

WBR,
valery






More information about the l4-hackers mailing list