Discussion:
VirtualBox on Genode
Yevgeny Lavrov
2016-09-01 22:04:15 UTC
Permalink
Hello

I'm currently trying to reproduce VertualBox with Tinycore Linux running on
top of NOVA hypervisor scenario on x86-64 hardware.

The steps I've taken so far are:
1) ./tool/ports/prepare_ports for nova and virtualbox
2) ./tool/create_builddir nova_x86_64
3) uncommented REPOSITORIES += $(GENODE_DIR)/repos/libports line in
<Genode-dir>/build/nova_x86_64/etc/build.conf
4) Downloaded Tinycore Linux .iso image

Questions:
1) Where should I put Tinycore Linux .iso file? It says save it as
bin/test.iso in the similar thread "running VirtualBox on Genode" on Genode
mailing lists. Is it <Genode-dir>/build/nova_x86_64/bin directory that gets
created after executing make run/demo?
2) Where should I add "<config><image type="iso"
file="/iso/test.iso"/></config>" ?
3) Where to execute make run/virtualbox? I assume it's my build directory.
However, executing it in my build directory results in Error: no run script
for virtualbox.

Please advise
Thank you
Alexander Boettcher
2016-09-02 07:54:03 UTC
Permalink
Hello,
Post by Yevgeny Lavrov
1) Where should I put Tinycore Linux .iso file? It says save it as
bin/test.iso in the similar thread "running VirtualBox on Genode" on Genode
mailing lists. Is it <Genode-dir>/build/nova_x86_64/bin directory that gets
Yes.
Post by Yevgeny Lavrov
2) Where should I add "<config><image type="iso"
file="/iso/test.iso"/></config>" ?
Not needed, see below.
Post by Yevgeny Lavrov
3) Where to execute make run/virtualbox? I assume it's my build directory.
Yes, call in your build directory, <Genode-dir>/build/nova_x86_64,

make run/virtualbox
Post by Yevgeny Lavrov
However, executing it in my build directory results in Error: no run script
for virtualbox.
The effectively used run script is located in
$(GENODE_DIR)/repos/ports/run/virtualbox.run, so you have to add also
the "ports" directory to your build.conf file.

So do the same as with "libports", in your words:

uncommented REPOSITORIES += $(GENODE_DIR)/repos/ports line in
<Genode-dir>/build/nova_x86_64/etc/build.conf


Cheers,

Alex.

------------------------------------------------------------------------------
Yevgeny Lavrov
2016-09-05 08:05:04 UTC
Permalink
Thank you for the advise, everything compiled w/o any problems. However,
while testing it via Qemu, I ran into the following issue: once Tinycore
Linux reaches "Booting the kernel" phase, it hangs, and the following msg
gets displayed on my terminal:

[init -> virtualbox] main genodeConsole = 0000000000c0d8c8
[init -> fb_drv] Error: Could not open ROM session for "config"
[init -> fb_drv] Error: Could not obtain config file
[init -> fb_drv] Found: VESA BIOS version 3.0
[init -> fb_drv] OEM: SeaBIOS VBE(C) 2011
[init -> fb_drv] Found: physical frame buffer at 0xfd000000 size: 16777216
[init -> fb_drv] fb mapped to 0x2000000
[init -> fb_drv] using video mode: ***@16
[init -> virtualbox] Warning: getenv called for non-existent variable
"VBOX_USER_VMLOGDIR"
[init -> virtualbox] Warning: requested stack for thread 'EMT' of 1048576
Bytes is too large, limit to 1036288 Bytes
[init -> virtualbox] Warning: _fpathconf: _fpathconf not implemented
[init -> virtualbox] Warning: statfs provides bogus values for '//test.iso'
(probably a shared folder)
[init -> virtualbox] Warning: getenv called for non-existent variable
"VBOX_SUPLIB_FAKE"
[init -> virtualbox] EMT Initial balloon size 0
[init -> virtualbox] EMT PDMR3VmmDevHeapRegister 00000000f0400000
0000000000bfc000 4000
[init -> virtualbox] Warning: getenv called for non-existent variable
"VBOX_SUPLIB_FAKE"
[init -> virtualbox] Using SVM virtualization extension.
[init -> virtualbox] fb resize : ***@16 -> ***@0
[init -> virtualbox] fb resize : ***@16 -> ***@32
[init -> virtualbox] fb resize : ***@16 -> ***@0
[ 0] Killed EC:0xffffffff83282b80 SC:0xffffffff83219740 V:0x7f
CR0:0x80050033 CR3:0x760000 CR4:0x0 (PT not found)

I've also attempted to create bootable USB from virtualbox.iso via dd.
While on boot, I got the following msg

HDD EBIOS
isolinux.bin missing or corrupt

Any suggestions on where something might have gone wrong?

Thank you



On Fri, Sep 2, 2016 at 3:54 AM, Alexander Boettcher <
Post by Alexander Boettcher
Hello,
Post by Yevgeny Lavrov
1) Where should I put Tinycore Linux .iso file? It says save it as
bin/test.iso in the similar thread "running VirtualBox on Genode" on
Genode
Post by Yevgeny Lavrov
mailing lists. Is it <Genode-dir>/build/nova_x86_64/bin directory that
gets
Yes.
Post by Yevgeny Lavrov
2) Where should I add "<config><image type="iso"
file="/iso/test.iso"/></config>" ?
Not needed, see below.
Post by Yevgeny Lavrov
3) Where to execute make run/virtualbox? I assume it's my build
directory.
Yes, call in your build directory, <Genode-dir>/build/nova_x86_64,
make run/virtualbox
Post by Yevgeny Lavrov
However, executing it in my build directory results in Error: no run
script
Post by Yevgeny Lavrov
for virtualbox.
The effectively used run script is located in
$(GENODE_DIR)/repos/ports/run/virtualbox.run, so you have to add also
the "ports" directory to your build.conf file.
uncommented REPOSITORIES += $(GENODE_DIR)/repos/ports line in
<Genode-dir>/build/nova_x86_64/etc/build.conf
Cheers,
Alex.
------------------------------------------------------------
------------------
_______________________________________________
genode-main mailing list
https://lists.sourceforge.net/lists/listinfo/genode-main
Alexander Boettcher
2016-09-05 10:02:19 UTC
Permalink
Hello,
Post by Yevgeny Lavrov
while testing it via Qemu, I ran into the following issue: once Tinycore
Linux reaches "Booting the kernel" phase, it hangs, and the following msg
...
Post by Yevgeny Lavrov
[init -> virtualbox] Using SVM virtualization extension.
...
Post by Yevgeny Lavrov
[ 0] Killed EC:0xffffffff83282b80 SC:0xffffffff83219740 V:0x7f
CR0:0x80050033 CR3:0x760000 CR4:0x0 (PT not found)
running Virtualbox inside Qemu is not supposed to work well.
Additionally the SVM (AMD virtualization extension) emulated by Qemu is
not tested nor maintained by us. So you should run it on native Intel
hardware.

Additionally, if your Linux distro with Genode is running as a VM this
also causes reliable trouble (e.g. Genode VM -> qemu ->
VirtualBox/Genode - Tinycore Linux)
Post by Yevgeny Lavrov
I've also attempted to create bootable USB from virtualbox.iso via dd.
While on boot, I got the following msg
HDD EBIOS
isolinux.bin missing or corrupt
Just guessing:
- either the image got not correctly to the USB stick
- your BIOS/UEFI does not like your USB stick or has trouble in the USB
boot emulation

Try another USB stick or on another native machine or sometimes
switching the USB ports (on a USB 2 port instead of USB 3) may help.

Alex.

------------------------------------------------------------------------------
Chris Rothrock
2016-09-09 15:38:54 UTC
Permalink
I am working with Yevgeny on this part of the project and I am having the
same issue. I know that running it through the QEMU emulator probably
won't work so I used the virtualbox.iso image and put it onto my bootable
USB stick. This is the same stick that I have the Genode demo with a Nova
kernel running perfectly fine on, I have booted multiple machines with this
demo image, however the virtualbox ISO image boots, but does not load the
tinycore image properly - it hangs on booting to the VirtualBox machine in
the Genode environment.

On Mon, Sep 5, 2016 at 6:02 AM, Alexander Boettcher <
Post by Alexander Boettcher
Hello,
Post by Yevgeny Lavrov
while testing it via Qemu, I ran into the following issue: once Tinycore
Linux reaches "Booting the kernel" phase, it hangs, and the following msg
...
Post by Yevgeny Lavrov
[init -> virtualbox] Using SVM virtualization extension.
...
Post by Yevgeny Lavrov
[ 0] Killed EC:0xffffffff83282b80 SC:0xffffffff83219740 V:0x7f
CR0:0x80050033 CR3:0x760000 CR4:0x0 (PT not found)
running Virtualbox inside Qemu is not supposed to work well.
Additionally the SVM (AMD virtualization extension) emulated by Qemu is
not tested nor maintained by us. So you should run it on native Intel
hardware.
Additionally, if your Linux distro with Genode is running as a VM this
also causes reliable trouble (e.g. Genode VM -> qemu ->
VirtualBox/Genode - Tinycore Linux)
Post by Yevgeny Lavrov
I've also attempted to create bootable USB from virtualbox.iso via dd.
While on boot, I got the following msg
HDD EBIOS
isolinux.bin missing or corrupt
- either the image got not correctly to the USB stick
- your BIOS/UEFI does not like your USB stick or has trouble in the USB
boot emulation
Try another USB stick or on another native machine or sometimes
switching the USB ports (on a USB 2 port instead of USB 3) may help.
Alex.
------------------------------------------------------------
------------------
_______________________________________________
genode-main mailing list
https://lists.sourceforge.net/lists/listinfo/genode-main
--
Thank You,

Chris Rothrock
Senior System Administrator
(315) 308-1637
Alexander Boettcher
2016-09-09 16:15:03 UTC
Permalink
Hello,
Post by Chris Rothrock
I am working with Yevgeny on this part of the project and I am having the
same issue. I know that running it through the QEMU emulator probably
won't work so I used the virtualbox.iso image and put it onto my bootable
USB stick. This is the same stick that I have the Genode demo with a Nova
kernel running perfectly fine on, I have booted multiple machines with this
demo image, however the virtualbox ISO image boots, but does not load the
tinycore image properly - it hangs on booting to the VirtualBox machine in
the Genode environment.
can you please provide/look at the serial output of the native machine,
in order to get an idea of what went wrong. Without it will be hard to tell.

Cheers,

Alex.

------------------------------------------------------------------------------
Chris Rothrock
2016-09-09 16:29:12 UTC
Permalink
Neither of the two machines I have tried this on have a native serial
port. Will a USB to serial connection work or will I need to add the
dde_linux component for the USB drivers?

On Fri, Sep 9, 2016 at 12:15 PM, Alexander Boettcher <
Post by Alexander Boettcher
Hello,
Post by Chris Rothrock
I am working with Yevgeny on this part of the project and I am having the
same issue. I know that running it through the QEMU emulator probably
won't work so I used the virtualbox.iso image and put it onto my bootable
USB stick. This is the same stick that I have the Genode demo with a
Nova
Post by Chris Rothrock
kernel running perfectly fine on, I have booted multiple machines with
this
Post by Chris Rothrock
demo image, however the virtualbox ISO image boots, but does not load the
tinycore image properly - it hangs on booting to the VirtualBox machine
in
Post by Chris Rothrock
the Genode environment.
can you please provide/look at the serial output of the native machine,
in order to get an idea of what went wrong. Without it will be hard to tell.
Cheers,
Alex.
------------------------------------------------------------
------------------
_______________________________________________
genode-main mailing list
https://lists.sourceforge.net/lists/listinfo/genode-main
--
Thank You,

Chris Rothrock
Senior System Administrator
(315) 308-1637
Alexander Boettcher
2016-09-10 09:45:29 UTC
Permalink
Hello,
Post by Chris Rothrock
Neither of the two machines I have tried this on have a native serial
port. Will a USB to serial connection work or will I need to add the
dde_linux component for the USB drivers?
No, this is not going to work.

You may check whether the machines support Intel AMT in your UEFI/BIOS.
It provides a feature called SOL (SerialOverLan) with that you can route
the serial output to some other machine.

Otherwise you will need some PCI/Serial card for your desktop/server
machines or for notebooks there are mini PCIe cards if you have such a slot.

Alex.
Post by Chris Rothrock
On Fri, Sep 9, 2016 at 12:15 PM, Alexander Boettcher <
Post by Alexander Boettcher
Hello,
Post by Chris Rothrock
I am working with Yevgeny on this part of the project and I am having the
same issue. I know that running it through the QEMU emulator probably
won't work so I used the virtualbox.iso image and put it onto my bootable
USB stick. This is the same stick that I have the Genode demo with a
Nova
Post by Chris Rothrock
kernel running perfectly fine on, I have booted multiple machines with
this
Post by Chris Rothrock
demo image, however the virtualbox ISO image boots, but does not load the
tinycore image properly - it hangs on booting to the VirtualBox machine
in
Post by Chris Rothrock
the Genode environment.
can you please provide/look at the serial output of the native machine,
in order to get an idea of what went wrong. Without it will be hard to tell.
Cheers,
Alex.
------------------------------------------------------------
------------------
_______________________________________________
genode-main mailing list
https://lists.sourceforge.net/lists/listinfo/genode-main
------------------------------------------------------------------------------
_______________________________________________
genode-main mailing list
https://lists.sourceforge.net/lists/listinfo/genode-main
--
Alexander Boettcher
Genode Labs

http://www.genode-labs.com · http://genode.org

Genode Labs GmbH · Amtsgericht Dresden · HRB 28424 · Sitz Dresden
Geschäftsführer: Dr.-Ing. Norman Feske, Christian Helmuth

------------------------------------------------------------------------------
Loading...