On Monday, 30.11.2015 at 11:35, Martin Lucina wrote:
> I'll have a crack at implementing config loading via a multiboot module and
> see how it goes.

Done, seems to work:

----
$ qemu-system-x86_64 -kernel wopr.bin -initrd wopr.json (...)
rump kernel bare metal bootstrap

x86_initclocks(): Using PV clock for timekeeping
multiboot: Using configuration from wopr.json
<snip>
dhcp: vioif0: adding IP address 10.70.20.107/24
dhcp: vioif0: adding route to 10.70.20.0/24
dhcp: vioif0: adding default route via 10.70.20.1
lease time: 86400 seconds

=== calling "./wopr.bin" main() ===

WOPR reporting for duty on port 4096
----

I've pushed this to master -- it does not change existing behaviour in any
way, i.e. configuration is still accepted via the "kernel command line".

For the avoidance of doubt, despite the use of -initrd in the QEMU command
above, this is not an initrd! I take the first multiboot module (if any)
and pass its contents as the JSON configuration to rumprun.

So, hooray, no need to mess with sed and/or deal with any other limitations
of the command line, *and* we can look at using the command line for actual
"early boot" setup such as console output.

Now to document the current JSON spec and methods used to pass it to the
unikernel and then we can look at removing rumprun-launch for (at least)
the hw platform.

-mato

Reply via email to