[osv-dev] Jenkins build is back to normal : osv-build #1461

2019-03-06 Thread jenkins
See 


-- 
You received this message because you are subscribed to the Google Groups "OSv 
Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to osv-dev+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [osv-dev] Re: [PATCH] Enhance SMP logic to parse MP table

2019-03-06 Thread Nadav Har'El
On Tue, Mar 5, 2019 at 5:37 PM Waldek Kozaczuk  wrote:

>
> 2019-03-05T14:47:40.839064594 [anonymous-instance:WARN:vmm/src/lib.rs:1080]
>> Guest-boot-time =  62091 us 62 ms,  69244 CPU us 69 CPU ms
>> *root=/dev/vda: No such file or directory*
>> program exited with status 1
>> VFS: unmounting /dev
>> VFS: unmounting /proc
>> VFS: unmounting /
>> Powering off.
>> 2019-03-05T14:47:40.848183837 [anonymous-instance:ERROR:vmm/src/
>> lib.rs:1320] Failed to log metrics while stopping: Logger was not
>> initialized.
>> 2019-03-05T14:47:40.862006: End
>>
>>
>> I don't where this message comes from, I am guessing that something got
>> broken in the command line and OSv tried to run the string "root=/dev/vda"
>> as the command line instead of the desired command line (/usr/games/rogue)?
>> Using build fs=ramfs does not help, so it seems the new virtio stuff is
>> working, just something in the command line got broken?
>>
> Indeed the issue is with the command line and I am actually not surprised.
> I very rarely use rogue as I am not really familiar with this game ;-)
> Never came across it in the 80ties.
>

I wholeheartedly recommend this game. Dennis Ritchie once called it "the
biggest waste of CPU cycles in history". I guess this was a few decades
before Fortnight ;-)

Anyway, I never actually played a full game of rogue on OSv. It just has a
short name, and runs something non-obvious, so I tend to use it as an
example when I need to run something without thinking too much what to
run...



> I any case firecracker appends some Linux-specific parameters to the
> command line
>

You're right. It's very strange, I was assuming it prepends, but it indeed
appends. And when rogue is given a parameter it indeed tries to use it as a
file - apparently a file for a previously saved game (you can stop a game
in the middle and save it to a file, and later restore it).

Anyway, thanks for fixing it.


> (see here for command line example -
> https://github.com/firecracker-microvm/firecracker/releases - default 
> "reboot=k
> panic=1 pci=off nomodules 8250.nr_uarts=0 i8042.noaux i8042.nomux
> i8042.nopnp i8042.dumbkbd") that we do not care for except for
> virtio-mmio stuff which we parse and remove from command line before we
> pass it on the downstream logic. The applications that I have used to test
> OSv on firecracker (*-hello, *-httpserver ones for example) do not care
> about extra parameters but in the rogue case it somehow cares. The
> particular one (*root=/dev/vda*) I think comes from the fact that adding
> block device makes it add this parameter to command line. I think the rouge
> would boot properly with previous version of firecracker.py where it did
> not add block device to firecracker instance. BTW it would be nice to
> change OSv to show received command line in verbose mode. I would find it
> very handy.
>

> Long story short in order to address these command line woes, we need to
> come up with some sort of 'OSv command line marker' scheme. For example we
> could add logic to look for some special end of command line sequence of
> characters or add new boot option called '--cmdline_end_marker' which would
> explicitly state what to look for end of the command line. Do you have
> other ideas?
>

I don't know, your choice :-)

>
> Relatedly you may have noticed that new firecracker.py automatically
> converts usr.img to usr.raw as firecracker cannot deal with qcow :-(
>

I noticed, but also saw a few people on the Internet giving firecracker
examples with a qcow2 image, so how sure are you that it doesn't deal with
qcow2?


> This is not a problem with rofs images (which btw I typically use with
> firecracker as it boots much faster) but leads to 10G usr.raw file when we
> use zfs. Obviously one can pass fs_size_mb parameter to build script but I
> wonder if there is a better way to handle it. Change default 10G to
> something smaller?
>

Perhaps. This 10G was completely arbitrary. Maybe the default should be
smaller and make it clearer in the README or Makefile how to change it.

-- 
You received this message because you are subscribed to the Google Groups "OSv 
Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to osv-dev+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [osv-dev] OSv fully and officially supported on Firecracker !!!

2019-03-06 Thread Nadav Har'El
On Wed, Mar 6, 2019 at 6:24 AM Waldek Kozaczuk  wrote:

> With couple of last patches applied yesterday we finally made OSv properly
> and fully run on Firecracker. This includes ability to run arbitrary images
> (zfs, rofs or ramfs) with networking and SMP supported as well.
>

Very nice! I tried a couple of things, including interactive applications
which didn't work correctly yesterday, but now seems to work correctly.
Great work!

A few final points on my wishlist for this subject (none of this is urgent):
1. Avoid the conversion to the (very large...) "raw image" in
scripts/firecracker.py. According to an example
https://medium.com/@s8sg/quick-start-with-firecracker-and-firectl-
2. Find the places in the documentation (?) where we list the supported
hypervisors, and add Firecracker to the list.
in-ubuntu-f58aeedae04b, it seems firecracker is supposed to support qcow2,
not just raw images?
3. scripts/run.py has a "-p" option to choose hypervisor (see "launchers =
..." list in run.py), we could add firecracker to this list and call
scripts/firecracker.py.
4. Now that you fixed the vmlinuz support, does it mean we can also use
Qemu's "-kernel" option? Does it make boot any faster?

-- 
You received this message because you are subscribed to the Google Groups "OSv 
Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to osv-dev+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.