my problem of starting l4linux in qemu

Adam Lackorzynski adam at os.inf.tu-dresden.de
Thu Sep 25 19:31:11 CEST 2008


On Thu Sep 25, 2008 at 15:55:23 +0800, Ding ying wrote:
> Hi,all:
>         I get the source code from svn a few days ago,but I can't start
> l4linux in qemu with con.The error is like follow:
> 
> #0a: loading "/l4io "
>      from [022e4000-02553ac3] to [00c20000-00c44b9f][00c45000-00cb4000]
>      entry at 00066060 via trampoline page code
>      symbols at [0eaf9000-0eb4f000] (344kB), lines at [0eade000-0eaf9000]
> (108kB)
> #0b: loading "/con --vbemod 0x117"
>      from [02554000-026e6ae5] to [00b00000-00b5147f][00b52000-00b75000]
>      entry at 0006706c via trampoline page code
>      symbols at [0ead0000-0eade000] (56kB), lines at [0ea99000-0ead0000]
> (220kB)
> 
> ROOT: Sending ports 0070-0070 to task #09
> ROOT: Sending ports 0080-0080 to task #09
> ROOT: Sending ports 0071-0071 to task #09
> simplets| Configured for 300 tasks.
> rtc     | Date:25.09.2008 Time:07:40:32
> bmodfs  | Passed the following modules:
> bmodfs  |   module "/libld-l4.s.so" (476kB)
> bmodfs  |   module "/libloader.s.so" (632kB)
> bmodfs  |   module "/run" (315kB)
> bmodfs  |   module "/drops-rd.rd" (16384kB)
> bmodfs  |   module "/vmlinuz" (3419kB)
> bmodfs  |   module "/cfg/l4linux26-dope-ram.cfg" (1kB)
> loader  | Can't map tbuf status page
> con     | Using fast memcpy.
> loader  | "run" needs libld-l4.s.so
> loader  | run: Starting application using libld-l4.s.so
> loader  | run,#e: Loading binary
> loader  | run,#e: Loading ldso
> loader  | run,#e: Starting libld-l4.s.so at 00013950 via 0000cf8c
> loader  | sleeping for 1000 ms
> io      | Using platform configuration 'x86'
> ROOT: Sending ports 0cfb-0cfb to task #0a
> ROOT: Sending ports 0cf8-0cfb to task #0a
> ROOT: Sending ports 0cfe-0cff to task #0a
> io      | PCI: Using configuration type 1
> io      | PCI: Probing PCI hardware
> io      | PCI: Probing PCI hardware (bus 00)
> ROOT: Sending ports 0cfc-0cff to task #0a
> io      | PCI: PIIX3: Enabling Passive Release on 00:01.0
> io      | Limiting direct PCI/PCI transfers.
> io      | Activating ISA DMA hang workarounds.
> io      | 00000000-ffffffff : PCI mem
> io      |   e0000000-e1ffffff : Cirrus Logic GD 5446
> io      |   e2000000-e2000fff : Cirrus Logic GD 5446
> io      | 0000-ffff : PCI IO
> io      |   0cf8-0cff : PCI conf1
> io      |   b000-b03f : Intel Corporation 82371AB/EB/MB PIIX4 ACPI
> io      |   c000-c00f : Intel Corporation 82371SB PIIX3 IDE [Natoma/Triton
> II]
> io      |   c100-c1ff : Realtek Semiconductor Co., Ltd. RTL-8029(AS)
> io      | Available IRQs=[ <!0> 1 <!2> 3 <!4> 5 6 7 8 9 a b c d e f 10 11 ]
> con     | Character size is 8x14, font has 256 characters
> con     | Trying execution of ``set VBE mode'' using x86emu
> ROOT: Sending ports 03c4-03c4 to task #0b
> ROOT: Sending ports 03c5-03c5 to task #0b
> con     | Found VESA BIOS version 2.0
> con     | OEM VGABIOS Cirrus extension
> ROOT: Cannot send port 0cf8 to task #0b, owner is #0a
> 
> ROOT: task B.00 at 00b208f8 is trying to get I/O port 0cf8 allocated by task
> a
> 
>     --double page fault--------------------------------------IP: 00129196
> 
> The fiasco config is most default,i just enable the
> Handler and preserve segments and Enable I/O port protection under kernel
> options.

That's good. But unfortunately using both l4io and 'l4con --vbemode...'
does not work together because the x86emu lib uses io-instructions
directly. In this case you should use the GRUB vbeset command and avoid
the l4con --vbemode parameter.


Adam
-- 
Adam                 adam at os.inf.tu-dresden.de
  Lackorzynski         http://os.inf.tu-dresden.de/~adam/




More information about the l4-hackers mailing list