From: Amit Shah <amit.shah@redhat.com>
To: Alan Cox <alan@linux.intel.com>
Cc: rusty@rustcorp.com.au, virtualization@lists.linux-foundation.org,
linux-kernel@vger.kernel.org, greg@kroah.com,
Anthony Liguori <anthony@codemonkey.ws>
Subject: Re: [PATCH] virtio_console: Add support for multiple ports for generic guest and host communication
Date: Tue, 15 Sep 2009 18:07:52 +0530 [thread overview]
Message-ID: <20090915123752.GB5247@amit-x200.redhat.com> (raw)
In-Reply-To: <20090911170010.34c80f2d@linux.intel.com>
[Adding Greg to the CC list]
On (Fri) Sep 11 2009 [17:00:10], Alan Cox wrote:
> > The interface presented to guest userspace is of a simple char
> > device, so it can be used like this:
> >
> > fd = open("/dev/vcon2", O_RDWR);
> > ret = read(fd, buf, 100);
> > ret = write(fd, string, strlen(string));
> >
> > Each port is to be assigned a unique function, for example, the
> > first 4 ports may be reserved for libvirt usage, the next 4 for
> > generic streaming data and so on. This port-function mapping
> > isn't finalised yet.
>
> Unless I am missing something this looks completely bonkers
>
> Every time we have a table of numbers for functionality it ends in
> tears. We have to keep tables up to date and managed, we have to
> administer the magical number to name space.
>
> Anyway - you don't seem to need a fixed number you can use dynamic
> allocation and udev.
>
> There are at least two better ways to do this
>
> - Using sysfs nodes so you have a proper heirarchy of names/functions
> - Using a simple file system which provides a heirarchy of nodes whose
> enumeration and access is backed by calls to whatever happyvisor you
> are using.
>
> it then self enumerates, self populates, doesn't need anyone to keep
> updating magic tables of guest code and expands cleanly - yes ?
Hey Greg,
Can you tell me how this could work out -- each console port could have
a "role" string associated with it (obtainable from the invoking qemu
process in case of qemu/kvm). Something that I have in mind currently
is:
$ qemu-kvm ... -virtioconsole role=org/qemu/clipboard
and then the guest kernel sees the string, and puts the
"org/qemu/clipboard" in some file in sysfs. Guest userspace should then
be able to open and read/write to
/dev/virtio_console/org/qemu/clipboard
I guess that's an acceptable scheme to all.
I also don't know how this would work -- which sysfs attributes to
export and how would udev pick that up and create the device at the
specified location.
Any pointers appreciated.
Thanks,
Amit
next prev parent reply other threads:[~2009-09-15 12:38 UTC|newest]
Thread overview: 56+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-09-11 14:13 Multiple ports support for virtio_console; major number for dev Amit Shah
2009-09-11 14:13 ` [PATCH] virtio_console: Add support for multiple ports for generic guest and host communication Amit Shah
2009-09-11 16:00 ` Alan Cox
2009-09-11 16:38 ` Amit Shah
2009-09-11 17:26 ` Anthony Liguori
2009-09-11 17:33 ` Amit Shah
2009-09-11 17:35 ` Anthony Liguori
2009-09-16 10:23 ` Alan Cox
2009-09-16 22:20 ` Anthony Liguori
2009-09-17 13:06 ` Markus Armbruster
2009-09-17 13:15 ` Alan Cox
2009-09-17 13:41 ` Amit Shah
2009-09-17 15:57 ` Alan Cox
2009-09-17 16:46 ` Amit Shah
2009-09-18 16:00 ` Alan Cox
2009-09-18 17:55 ` Anthony Liguori
2009-09-18 17:57 ` H. Peter Anvin
2009-09-18 18:02 ` Anthony Liguori
2009-09-19 7:04 ` Amit Shah
2009-09-18 20:11 ` Gerd Hoffmann
2009-09-19 7:01 ` Amit Shah
2009-09-21 10:06 ` Alan Cox
2009-09-15 12:37 ` Amit Shah [this message]
2009-09-15 12:57 ` Anthony Liguori
2009-09-15 13:03 ` Amit Shah
2009-09-15 13:37 ` Anthony Liguori
2009-09-15 14:08 ` Gerd Hoffmann
2009-09-15 14:09 ` Anthony Liguori
2009-09-22 2:44 ` Rusty Russell
2009-09-22 15:45 ` Amit Shah
2009-09-29 9:24 ` Amit Shah
2009-09-29 10:09 ` Christian Borntraeger
2009-09-29 10:33 ` Amit Shah
2009-09-29 11:02 ` Christian Borntraeger
2009-09-29 11:40 ` Christian Borntraeger
2009-09-29 12:03 ` Christian Borntraeger
2009-09-29 12:20 ` Amit Shah
2009-09-29 12:56 ` Christian Borntraeger
2009-09-29 13:09 ` Amit Shah
2009-09-29 13:31 ` Christian Borntraeger
2009-09-30 17:13 ` Amit Shah
2009-10-01 8:17 ` Christian Borntraeger
2009-10-01 8:47 ` Amit Shah
2009-10-01 8:55 ` Christian Borntraeger
2009-10-01 9:00 ` Christian Borntraeger
2009-10-01 10:04 ` Amit Shah
2009-10-01 10:28 ` Christian Borntraeger
2009-10-01 10:42 ` Amit Shah
2009-10-01 11:58 ` Amit Shah
2009-10-01 12:04 ` Christian Borntraeger
2009-10-01 13:50 ` Amit Shah
2009-10-05 14:05 ` Amit Shah
2009-10-06 6:49 ` Christian Borntraeger
2009-10-06 6:55 ` Amit Shah
2009-09-29 13:11 ` Rusty Russell
2009-09-29 13:24 ` Amit Shah
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
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20090915123752.GB5247@amit-x200.redhat.com \
--to=amit.shah@redhat.com \
--cc=alan@linux.intel.com \
--cc=anthony@codemonkey.ws \
--cc=greg@kroah.com \
--cc=linux-kernel@vger.kernel.org \
--cc=rusty@rustcorp.com.au \
--cc=virtualization@lists.linux-foundation.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.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®