Bender and GRUB1 "legacy"

Valery V. Sedletski _valerius at ...73...
Wed Feb 28 00:58:14 CET 2018

On 27.02.2018 22:31, Alexander Boettcher wrote:
> Hello,
> On 23.02.2018 18:47, Valery V. Sedletski via genode-main wrote:
>> scenarios, so far. NOVA seems to hang on my three available
>> machines, for some reason. So, I tried the Fiasco.OC kernel instead.
>> (But VirtualBox and Seoul are working on NOVA only). So far, my
>> attempts to run Sculpt was not successfull too. It looks like acpi_drv
>> does not like something in ACPI tables of my test machine.
> the provided information are very vague. What exactly "does
> not like something" mean ?
I took a screenshot and put it here [1]. Unfortunately, this machine has no
COM port (it is an Asus Core2Duo laptop). This is a result of trying to run
"" on Fiasco.OC.

Running noux_bash/foc on another machine with a COM port, I saw two 
different errors,
[2] with PS/2 driver stopping to boot, and [3] with an unhandled page 
fault in usb_drv.
This machine is my desktop with Athlon 64 (Socket 939), 4 GB of RAM. It 
has two PS/2
ports for both, keyboard and mouse, but ATM, no devices are attached. I 
currently use a pair of
wireless Logitech mouse M280, and wireless Logitech Keyboard K800, both 
paired with
Logitech Unifying transceiver. This transceiver can be paired with up to 
6 compatible
mice or keyboards. It only requires an USB stack + a HID class driver + 
USB mouse driver
+ USB keyboard driver. Once paired, it works out of the box at hardware 
level. No special
support is required (except for support for "composite" devices, maybe. 
The transceiver is
a composite HID device. I can supply a report of an utility similar to 
"lsusb"). It works good
under Linux, so I decided that Linux USB stack ported  to Genode should 
work with it.
But it seems, that there are some problems with it. I can help with 
debugging this to get
it working, if you'd like. Otherwise, I can return my USB, or PS/2 
keyboard and mouse back
(I still have them).

> Please note that on Genode/Fiasco.OC you see output since the
> kernel prints the Genode messages also to the VGA console.
> On Genode/NOVA there is no such support by the kernel for Genode. That
> means, probably the NOVA kernel is booted up completely and Genode gets
> running and just get stuck in your apci_drv issues you encountered.
> You just don't see it. You have several options here:
> a) Either debug the early boot on Genode/Fiasco.OC (having VGA output),
> which could also solve your issue with Genode/NOVA bootstrap.
> b) Get serial output of Genode/NOVA on you target machines.
> c) Alternatively, you may try a debugging commit [0] for Genode/NOVA
> which adds some very limited VGA output support. The patch is probably
> outdated and you will have to adjust it.
> If you really want to get your hardware running, I would go with option
> b), if this is not possible with a) and if nothing
> helps with c).
Yes, thanks -- I already have guessed this myself.

Regarding what's wrong with NOVA, the problem was that NOVA does not 
echo the
COM port log to screen, like Fiasco/Fiasco.OC do. So, I ran it on a 
second machine with
a COM port (the Athlon 64 desktop). The problem appears to be with my 
custom GRUB-
like bootloader, it appears that I forgot to add

modaddr 0x02000000

to load modules above 32 MB (The bootloader has the GRUB patch from
Adam Lackorzynski included). So, this is a problem with this loader, not 
NOVA. NOVA is ok.
Core got stuck with an "init: Bad ELF file" error, because of a problem 
with my
bootloader. It currently needs modules loaded above 4 Gb boundary.

The scenario I tried to run was last "Sculpt" version from "master" branch.
So, I ran Sculpt/Fiasco.OC on Athlon 64 machine with a COM port. It stops
on loading "init" with the follownig error:
Genode 17.11-284-ge79ce5a03 <local changes>
686 MiB RAM and 63253 caps assigned to init
[init] Error: RAM preservation exceeds available memory
[init] Warning: runtime: assigned RAM exceeds available RAM

(this log is taken in QEMU. The same problem is on the real machine. The 
difference is that it has more RAM)

So, it looks that some quota is insufficient. Though, I have no idea, 
which one. The
above error usually is not fatal. It is often showed when running in 
QEMU. But I see
it on both QEMU and two my real machines (both the Asus Core2Duo laptop, and
Athlon 64 desktop). Both machines have 4 GB of RAM. Is "Sculpt" supposed 
to run
in QEMU, or it even requires more than 4 GB of RAM? Three of my 
available machines
have 4 GB, and the usual test machine (Asus Core2Duo laptop) has only 2 
GB of RAM.






More information about the users mailing list