qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] s390 - Parts of console output lost
@ 2010-04-05 14:45 Bastian Blank
  2010-04-05 15:03 ` Amit Shah
  2010-04-05 18:04 ` Alexander Graf
  0 siblings, 2 replies; 3+ messages in thread
From: Bastian Blank @ 2010-04-05 14:45 UTC (permalink / raw)
  To: qemu-devel

Hi

116348def2bb446d972bdc2f44bd77ff631f85de works on s390/kvm, but on startup
parts of the console output is lost. The used kernel is a standard Debian
distribution kernel.

| $ ./s390x-softmmu/qemu-system-s390x -nographic -enable-kvm -kernel /boot/vmlinuz-2.6.32-4-s390x -initrd /boot/initrd.img-2.6.32-4-s390x -append "break=premount"
| [    0.583078] cio: Channel measurement facility initialized using format basic (mode autodetected)
| [    0.585475] TCP cubic registered

Everything up to the first line is lost on the virtio console. This
could be also a kernel problem as this kernel includes two drivers
responsible for hvc, virtio and iucv. The last line in the kernel log
before the properly shown ones is:

| [    0.592667] hvc_iucv: The z/VM IUCV HVC device driver cannot be used without z/VM

Bastian

-- 
No one can guarantee the actions of another.
		-- Spock, "Day of the Dove", stardate unknown

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [Qemu-devel] s390 - Parts of console output lost
  2010-04-05 14:45 [Qemu-devel] s390 - Parts of console output lost Bastian Blank
@ 2010-04-05 15:03 ` Amit Shah
  2010-04-05 18:04 ` Alexander Graf
  1 sibling, 0 replies; 3+ messages in thread
From: Amit Shah @ 2010-04-05 15:03 UTC (permalink / raw)
  To: Bastian Blank, qemu-devel

On (Mon) Apr 05 2010 [16:45:21], Bastian Blank wrote:
> Hi
> 
> 116348def2bb446d972bdc2f44bd77ff631f85de works on s390/kvm, but on startup
> parts of the console output is lost. The used kernel is a standard Debian
> distribution kernel.
> 
> | $ ./s390x-softmmu/qemu-system-s390x -nographic -enable-kvm -kernel /boot/vmlinuz-2.6.32-4-s390x -initrd /boot/initrd.img-2.6.32-4-s390x -append "break=premount"
> | [    0.583078] cio: Channel measurement facility initialized using format basic (mode autodetected)
> | [    0.585475] TCP cubic registered
> 
> Everything up to the first line is lost on the virtio console. This
> could be also a kernel problem as this kernel includes two drivers
> responsible for hvc, virtio and iucv. The last line in the kernel log
> before the properly shown ones is:
> 
> | [    0.592667] hvc_iucv: The z/VM IUCV HVC device driver cannot be used without z/VM

The kernel should be using the virtio_console functionality. Do you have
it compiled in to get early_printks?

		Amit

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [Qemu-devel] s390 - Parts of console output lost
  2010-04-05 14:45 [Qemu-devel] s390 - Parts of console output lost Bastian Blank
  2010-04-05 15:03 ` Amit Shah
@ 2010-04-05 18:04 ` Alexander Graf
  1 sibling, 0 replies; 3+ messages in thread
From: Alexander Graf @ 2010-04-05 18:04 UTC (permalink / raw)
  To: Bastian Blank; +Cc: qemu-devel


On 05.04.2010, at 16:45, Bastian Blank wrote:

> Hi
> 
> 116348def2bb446d972bdc2f44bd77ff631f85de works on s390/kvm, but on startup
> parts of the console output is lost. The used kernel is a standard Debian
> distribution kernel.
> 
> | $ ./s390x-softmmu/qemu-system-s390x -nographic -enable-kvm -kernel /boot/vmlinuz-2.6.32-4-s390x -initrd /boot/initrd.img-2.6.32-4-s390x -append "break=premount"
> | [    0.583078] cio: Channel measurement facility initialized using format basic (mode autodetected)
> | [    0.585475] TCP cubic registered
> 
> Everything up to the first line is lost on the virtio console. This
> could be also a kernel problem as this kernel includes two drivers
> responsible for hvc, virtio and iucv. The last line in the kernel log
> before the properly shown ones is:
> 
> | [    0.592667] hvc_iucv: The z/VM IUCV HVC device driver cannot be used without z/VM

KVM for S390 does early printk using a special hypervisor callback. The patch to inject input from there into virtio-console was rejected upstream, because people believed it to be better to create a mux of an early and a real console device. While I agree that that approach would be superior I didn't get around to it yet and instead just carry this patch for personal development:


diff --git a/hw/s390-virtio.c b/hw/s390-virtio.c
index ad3386f..37d6c64 100644
--- a/hw/s390-virtio.c
+++ b/hw/s390-virtio.c
@@ -95,7 +99,10 @@ int s390_virtio_hypercall(CPUState *env)
             }
         } else {
             /* Early printk */
+
+            uint8_t *p = (uint8_t *)qemu_get_ram_ptr(mem);
+            printf("%s", p);
         }
         break;
     case KVM_S390_VIRTIO_RESET:
     {


Alex

^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2010-04-05 18:04 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-04-05 14:45 [Qemu-devel] s390 - Parts of console output lost Bastian Blank
2010-04-05 15:03 ` Amit Shah
2010-04-05 18:04 ` Alexander Graf

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 NNTP newsgroup(s).