Hi all, As far as I can see, early_put_chars is not used by virtio_console because it checks whether there is a port available before using it. If I understand correctly, this makes it useless because once we have a port, we can use the regular virtio transport to output things to the console. Does the attached patch seem valid ? Feedback from s390 and powerpc users who use this functionality would be appreciated. Thanks, François
From 3961f380bbe84a1036ddfc823039cbee31b44dcb Mon Sep 17 00:00:00 2001 From: =?utf-8?q?Fran=C3=A7ois=20Diakhat=C3=A9?= <fdiakh@xxxxxxxxx> Date: Thu, 18 Mar 2010 14:48:20 +0100 Subject: virtio: console: Fix early_put_chars usage Currently early_put_chars is not used by virtio_console because it can only be used once a port has been found, at which point it's too late because it is no longer needed. This patch should fix it. --- drivers/char/virtio_console.c | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/char/virtio_console.c b/drivers/char/virtio_console.c index f404ccf..691ba21 100644 --- a/drivers/char/virtio_console.c +++ b/drivers/char/virtio_console.c @@ -645,13 +645,13 @@ static int put_chars(u32 vtermno, const char *buf, int count) { struct port *port; + if (unlikely(early_put_chars)) + return early_put_chars(vtermno, buf, count); + port = find_port_by_vtermno(vtermno); if (!port) return 0; - if (unlikely(early_put_chars)) - return early_put_chars(vtermno, buf, count); - return send_buf(port, (void *)buf, count); } -- 1.6.1.3
_______________________________________________ Virtualization mailing list Virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/virtualization