]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
kvm tools: Enable earlyprintk=serial by default
authorIngo Molnar <mingo@elte.hu>
Sun, 8 May 2011 07:39:34 +0000 (09:39 +0200)
committerPekka Enberg <penberg@kernel.org>
Sun, 8 May 2011 07:48:40 +0000 (10:48 +0300)
Enable the earlyprintk console to the serial port, to allow the debugging of
very early hangs/crashes.

Since we already enable the serial console by default, this is a natural
extension of it.

I have tested that it indeed works, by provoking an early hang that triggers
after the early console is enabled by before the real console is registered. In
that case before the patch we get:

  $ ./kvm run --cpus 2
  [ silent hang ]

With this patch applied i got the early output:

 $ ./kvm run --cpus 60
 [    0.000000] console [earlyser0] enabled
 [    0.000000] Initializing cgroup subsys cpu
 [    0.000000] Linux version 2.6.39-rc6-tip-02944-g87b0bcf-dirty (mingo@aldebaran) (gcc version 4.6.0 20110419 (Red Hat 4.6.0-5) (GCC) ) #84 SMP Mon May 9 02:34:26 CEST 2011
 [    0.000000] Command line: notsc noapic noacpi pci=conf1 console=ttyS0 earlyprintk=serialroot=/dev/vda1 rw
 [    0.000000] locking up the box!

Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Pekka Enberg <penberg@kernel.org>
tools/kvm/kvm-run.c

index 764a2427d330e4c4076803ac2d1fa8957c966fe6..eb50b6a9636b32fcabd6eb12417005e0e564aca5 100644 (file)
@@ -409,7 +409,7 @@ int kvm_cmd_run(int argc, const char **argv, const char *prefix)
        kvm->nrcpus = nrcpus;
 
        memset(real_cmdline, 0, sizeof(real_cmdline));
-       strcpy(real_cmdline, "notsc noapic noacpi pci=conf1 console=ttyS0 ");
+       strcpy(real_cmdline, "notsc noapic noacpi pci=conf1 console=ttyS0 earlyprintk=serial");
        if (kernel_cmdline)
                strlcat(real_cmdline, kernel_cmdline, sizeof(real_cmdline));