DDEkit for Linux2.6 from svn
Björn Döbel
doebel at os.inf.tu-dresden.de
Sat Jan 3 13:50:35 CET 2009
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hi,
> sudo qemu -cdrom cd-image.iso -serial stdio -net
> nic,model=rtl8139,vlan=0 -net tap,vlan=0 -m 200
Ok, you are running qemu emulating a Realtek NIC.
[..]
> arping | main(): Hello from the ORe arping shared memory client
> arping | main(): verbosity: 0
> arping | main(): connecting to 'ORe'
> arping | main(): interface: 'eth0'
> arping | main(): verbosity: 0
> arping | main(): string ipc receive
> arping | main(): sending with string ipc
> arping | l4ore_open(): called
> arping | l4ore_open(): descriptor: 0
> io | Using platform configuration 'x86'
> io | PCI: Using configuration type 1
> io | PCI: Probing PCI hardware
> io | PCI: Probing PCI hardware (bus 00)
> 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 | f0000000-f1ffffff : Cirrus Logic GD 5446
> io | f2000000-f2000fff : Cirrus Logic GD 5446
> io | f2001000-f20010ff : Realtek Semiconductor Co., Ltd. RTL-8139/8139C/
> io : 8139C+
This is where the RTL chip is found by L4IO.
> io | 0000-ffff : PCI IO
> io | 0cf8-0cff : PCI conf1
> io | b000-b03f : Intel Corporation 82371AB/EB/MB PIIX4 ACPI
> io | b100-b11f : 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-8139/8139C/8139C+
> io | Available IRQs=[ <!0> 1 <!2> 3 <!4> 5 6 7 8 9 a b c d e f 10 11 ]
> ore | Softirq daemon starting
> ore | Initializing DDE page cache
> ore | unimplemented: pci_fixup_device
> ore | unimplemented: pci_fixup_device
> ore | _add_ddekit_device: Detected device: 8086:7000
> ore | unimplemented: pci_fixup_device
> ore | unimplemented: pci_fixup_device
> ore | _add_ddekit_device: Detected device: 8086:7010
> ore | unimplemented: pci_fixup_device
> ore | unimplemented: pci_fixup_device
> ore | _add_ddekit_device: Detected device: 8086:7113
> ore | unimplemented: pci_fixup_device
> ore | unimplemented: pci_fixup_device
> ore | _add_ddekit_device: Detected device: 1013:b8
> ore | unimplemented: pci_fixup_device
> ore | unimplemented: pci_fixup_device
> ore | _add_ddekit_device: Detected device: 10ec:8139
> ore | <6>Intel(R) PRO/1000 Network Driver - version 7.3.15-k2
> ore | <6>Copyright (c) 1999-2006 Intel Corporation.
This is where ORe tries to initialize the Intel e1000 driver (for a NIC
which is not there).
> ore | unimplemented: pci_fixup_device
> ore | unimplemented: pci_fixup_device
> ore | unimplemented: pci_fixup_device
> ore | unimplemented: pci_fixup_device
> ore | unimplemented: pci_fixup_device
> ore | l4dde26_register_rx_callback: New rx callback @ 0x018012f0.
> ore | main(): initialized DDELinux2.6
> ore | main(): loopback: 0
> ore | <6>device lo entered promiscuous mode
> ore | main(): Initialized 1 network devices.
> ore | Device = lo, IRQ = 0, MAC = 00:00:00:00:00:00
This results in loopback being the only device found and driven by ORe...
> ore | main(): Registering 'ORe' at names...
> ore | main(): Ready for service.
> arping | ore_lookup_server(): ORe server ORe = 9.02
> arping | ore_do_open(): called
> ore | [9.2] ore/server/src/clients.c:215:setup_connection():
> ore | Error: no device found.
> arping | ore_do_open(): opened. worker = 7FF.7F
> arping | [A.2] ore/lib/client/lib.c:181:l4ore_open():
> arping | Error: ore_open() returned INVALID_ID
... and your application not being able to connect to ORe.
> arping | main(): opened eth0: -1 for 00:00:64:64:65:6B
> arping | [A.2] ore/examples/arping/main.c:303:main():
> arping | Error: could not open eth0!
> arping |
> arping | Exiting with 1
>
> === END ===
>
> Execution of ore with qemu with your provided image works fine though:
> http://os.inf.tu-dresden.de/~doebel/downloads/ore_image.iso
>
> Appreciate any inputs,
The ORe version in the disk image is configured to include a RTL8139+
driver. It may be that this is not the default when compiling ORe. Go to
l4/pkg/ore/server and run "make config" - there you can select which
drivers to include. This should get you up and running.
Cheers,
Bjoern
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
iEYEARECAAYFAklfXxgACgkQP5ijxgQLUNnwHwCgmK5oj6pTeM+o2QhMw3SmY97V
OxgAnjBvycSHjZHdpsZbJB9cDw3Cut4/
=aa8o
-----END PGP SIGNATURE-----
More information about the l4-hackers
mailing list