From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1MxJMH-0000du-4l for qemu-devel@nongnu.org; Mon, 12 Oct 2009 07:46:33 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1MxJMC-0000Zs-If for qemu-devel@nongnu.org; Mon, 12 Oct 2009 07:46:32 -0400 Received: from [199.232.76.173] (port=37146 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1MxJMC-0000Zo-DN for qemu-devel@nongnu.org; Mon, 12 Oct 2009 07:46:28 -0400 Received: from mx1.redhat.com ([209.132.183.28]:47301) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1MxJMB-00050e-94 for qemu-devel@nongnu.org; Mon, 12 Oct 2009 07:46:27 -0400 Received: from int-mx08.intmail.prod.int.phx2.redhat.com (int-mx08.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by mx1.redhat.com (8.13.8/8.13.8) with ESMTP id n9CBkPvn027154 for ; Mon, 12 Oct 2009 07:46:25 -0400 From: Amit Shah Date: Mon, 12 Oct 2009 17:15:46 +0530 Message-Id: <1255347949-32272-1-git-send-email-amit.shah@redhat.com> Subject: [Qemu-devel] [PATCH 0/3] virtio-console: Add support for multiple ports for generic guest-host communication List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: Amit Shah Hello, These are the newest patches that address all the previous comments. In particular, the problem of maintaining backward compat with old kernel and new qemu is handled by reserving port #0 for a console port. The old way of invocation, -virtconsole ... is still acceptable but to use multiple ports, the new invocation method is preferred: -device virtio-serial-pci \ -device virtconsole... \ -device virtserialport... In case of no '-device virtconsole' specified in the new form of invocation, an older guest kernel will assume that a virtio-console port exists. Any writes to such a port end up being ignored. For requirements, use-cases and some history see http://www.linux-kvm.org/page/VMchannel_Requirements I've also been testing all the features that are presented here by a small program that is to be run in the guest. It's an interactive program, available here: http://fedorapeople.org/gitweb?p=amitshah/public_git/test-virtserial.git The automated version of the program will also be put up in the same repo. These patches are based on top of the char patches I've sent previously (and are in Anthony's queue). Amit Shah (2): virtio-console: Add a virtio-serial bus, support for multiple ports virtio-console: Add a new virtserialport device for generic serial port support Gerd Hoffmann (1): qdev: add string property. Makefile.target | 2 +- hw/pc.c | 9 - hw/ppc440_bamboo.c | 7 - hw/qdev-properties.c | 28 ++ hw/qdev.c | 8 +- hw/qdev.h | 4 + hw/virtio-console.c | 206 +++++++------- hw/virtio-console.h | 19 -- hw/virtio-pci.c | 8 +- hw/virtio-serial-bus.c | 757 ++++++++++++++++++++++++++++++++++++++++++++++++ hw/virtio-serial.h | 220 ++++++++++++++ hw/virtio.h | 2 +- qemu-options.hx | 6 +- sysemu.h | 6 - vl.c | 65 +++-- 15 files changed, 1168 insertions(+), 179 deletions(-) delete mode 100644 hw/virtio-console.h create mode 100644 hw/virtio-serial-bus.c create mode 100644 hw/virtio-serial.h