unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: ludo@gnu.org (Ludovic Courtès)
To: Assaf Gordon <assafgordon@gmail.com>
Cc: guix-devel@gnu.org
Subject: Re: GUIX 0.7 under QEMU/KVM with virtio
Date: Sat, 04 Oct 2014 22:42:57 +0200	[thread overview]
Message-ID: <87bnprh8ha.fsf@gnu.org> (raw)
In-Reply-To: <542F7ECA.1030709@gmail.com> (Assaf Gordon's message of "Sat, 04 Oct 2014 00:59:54 -0400")

Hi, Assaf,

Assaf Gordon <assafgordon@gmail.com> skribis:

> First,
> I can provide another recipe:

Thanks for the recipe.  We should probably add a subsection on how to
install to a VM image in the manual.  Would you like to amend guix.texi
for that?

> Second,
> I can confirm Nate's observation that using QEMU's "-usbdrive" option for the USB image causes everything to be VERY slow.
> not sure why.
> Using "-hda" for the USB image is much better.

Weird, no idea either.

> Third,
> After boot (before setup), I'm trying to get a login prompt on the serial port (which QEMU's redirect to the terminal).
> I can do the following:
>    echo "hello" > /dev/ttyS0   => appears on the terminal
>
> I can also boot with "console=ttyS0,9600n8" (in the GRUB command line), and the kernel messages appear on the console.
> However, I can't get a login prompt on the serial console.
>
> I tried variations of:
>    agetty -L 9600 ttyS0 linux
>
> But they all exit after a timeout of few seconds, and no prompt appears on the serial console.
> Any ideas ?

I haven’t tried agetty, but it seems to have a hard-coded default login
program of “/bin/login”, which doesn’t exist here.  Could you try
invoking it with -l $(guix build shadow)/bin/login ?

Alternately you could try adding a mingetty service to the
configuration:

  (operating-system
    ...
    (services (cons (mingetty-service "ttyS0")
                    %base-services)))

> Fourth,
> Sadly, after installation is complete, and after rebooting, the system fails to load from "/dev/vda1" (drops to "early boot guile").
> Based on the kernel messages, it seems the "virtio_blk" driver is not loaded, and so "/dev/vda" is not available.
> If I then switch QEMU parameters from "-drive if=virtio" to "-drive if=ide" the system loads fine (also requires changing grub's "--root" parameter).
>
> Is there a way to fix this? force the kernel to load virto driver?

Currently all the drivers needed to mount the root partition must be
explicitly loaded in the initrd.  So yes, you would need to have the
virtio modules loaded from the initrd (info "(guix) Initial RAM Disk"):

  (operating-system
    ...
    (initrd (lambda (file-systems . rest)
              (apply base-initrd file-systems
                     #:extra-modules '("virtio.ko" "virtio_ring.ko"
                                       "virtio_blk.ko")
                     rest))))

I think this should work.

Thanks for your feedback!

Ludo’.

  reply	other threads:[~2014-10-04 20:43 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-10-04  4:59 GUIX 0.7 under QEMU/KVM with virtio Assaf Gordon
2014-10-04 20:42 ` Ludovic Courtès [this message]
2014-10-05  0:15   ` Assaf Gordon
2014-10-05 12:29     ` Ludovic Courtès
2014-10-05 23:29       ` Assaf Gordon
2014-10-06 19:28         ` Ludovic Courtès

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87bnprh8ha.fsf@gnu.org \
    --to=ludo@gnu.org \
    --cc=assafgordon@gmail.com \
    --cc=guix-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).