From: Anthony Liguori <anthony@codemonkey.ws>
To: Gerd Hoffmann <kraxel@redhat.com>
Cc: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH 0/2] Tunnel character device data over VNC (v1)
Date: Wed, 01 Jul 2009 13:51:36 -0500 [thread overview]
Message-ID: <4A4BB038.7050401@codemonkey.ws> (raw)
In-Reply-To: <4A4B9D2F.5000607@redhat.com>
Gerd Hoffmann wrote:
> On 07/01/09 18:50, Daniel P. Berrange wrote:
>> On Wed, Jul 01, 2009 at 06:42:31PM +0200, Gerd Hoffmann wrote:
>>> Hi,
>>>
>>>> The key requirement here is that it should not
>>>> be neccessary to specifically configure each character device to make
>>>> it available via VNC. The admin should be able to configure the char
>>>> devices with all current available backends (file, pty, null, tcp,
>>>> udp,
>>>> unix, etc), and regardless of this config be able to snoop on data
>>>> from
>>>> any active VNC client on demand.
>>> Hmm. What is the reason to handle vnc different from
>>> unix/tcp/pty/whatever? I would expect something like '-serial
>>> vnc,name=foo' here ...
>>
>> As I tried to explain, I want to be able to configure the serial devices
>> using the existing backends *AND* also have the ability to occassionally
>> access the data using a VNC client.
>
> That doesn't answer the question why vnc should be different.
>
> I *do* see the point of being able to have more than one way to access
> a chardev at the same time. But when building up that infrastructure:
> Why stop half-way through and make it a special hack for vnc? I think
> it would be *far* more useful to make chardevs in qemu work that way
> all the time.
>
> Each serial-type driver gets a name tag (either user-specified or
> autogenerated). chardev backends connect by name. Advantages:
Dynamically changing the character devices backends should be a not too
terrible thing to do today and I agree this is the right approach.
Allowing multiple readers/writers for character devices is much more
complex to get right though. The current chardev API does not have good
semantics for just handling one client that connects and disconnects.
It certainly wouldn't gracefully handle multiple client states at once.
You could do something like a mirrored mode but things get really ugly
when dealing with multiple read-write clients. Think of how that would
behave with the monitor for instance.
I agree that for something like -monitor tcp::1025,server,nowait, you
want to be able to connect multiple times and get multiple monitor
sessions. We would need a serious overhaul of the character device
infrastructure for that (and that's certainly long overdue). So IMHO,
this sort of refactoring shouldn't be a requirement for this patch series.
That doesn't mean we want to take a VNC specific hack though.
Regards,
Anthony Liguori
next prev parent reply other threads:[~2009-07-01 18:51 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-07-01 16:21 [Qemu-devel] [PATCH 0/2] Tunnel character device data over VNC (v1) Daniel P. Berrange
2009-07-01 16:26 ` [Qemu-devel] [PATCH 1/2] APIs to capture character device data Daniel P. Berrange
2009-07-01 16:27 ` [Qemu-devel] [PATCH 2/2] VNC char device data stream tunnelling Daniel P. Berrange
2009-07-01 18:44 ` Anthony Liguori
2009-07-01 16:32 ` [Qemu-devel] [PATCH 0/2] Tunnel character device data over VNC (v1) Daniel P. Berrange
2009-07-01 16:42 ` Gerd Hoffmann
2009-07-01 16:50 ` Daniel P. Berrange
2009-07-01 17:30 ` Gerd Hoffmann
2009-07-01 18:50 ` Daniel P. Berrange
2009-07-01 19:27 ` Gerd Hoffmann
2009-07-01 18:51 ` Anthony Liguori [this message]
2009-07-01 19:41 ` Gerd Hoffmann
2009-07-01 19:59 ` Anthony Liguori
2009-07-01 20:56 ` Gerd Hoffmann
2009-07-01 21:32 ` Anthony Liguori
2009-07-01 22:46 ` Gerd Hoffmann
2009-07-02 2:30 ` Jamie Lokier
2009-07-01 21:07 ` Daniel P. Berrange
2009-07-01 18:36 ` Anthony Liguori
2009-07-01 18:44 ` Daniel P. Berrange
2009-07-01 18:47 ` Anthony Liguori
2009-07-01 18:52 ` Daniel P. Berrange
2009-07-01 19:11 ` Anthony Liguori
2009-07-01 19:27 ` Daniel P. Berrange
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=4A4BB038.7050401@codemonkey.ws \
--to=anthony@codemonkey.ws \
--cc=kraxel@redhat.com \
--cc=qemu-devel@nongnu.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;
as well as URLs for NNTP newsgroup(s).