lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4AF43365.2030208@us.ibm.com>
Date:	Fri, 06 Nov 2009 08:32:05 -0600
From:	Anthony Liguori <aliguori@...ibm.com>
To:	Christian Borntraeger <borntraeger@...ibm.com>
CC:	Rusty Russell <rusty@...tcorp.com.au>,
	Amit Shah <amit.shah@...hat.com>, linux-kernel@...r.kernel.org,
	virtualization@...ux-foundation.org,
	"Michael S. Tsirkin" <mst@...hat.com>
Subject: Re: [PATCH v10 1/1] virtio_console: Add support for multiple ports
 for generic guest and host communication

Christian Borntraeger wrote:
>> Fundamentally speaking, right now, virtio-console is a single stream
>> that acts as an interactive terminal.  What we're looking to add here is
>> to support multiple terminals that can be enumerated in a rationale way.
>>     
>
> Right, that is a point where I disagree. The original purpose and intent of the 
> multiple port thing was to have a generic guest/host comm channels and *NOT* to 
> have multiple console devices. Having multiple console devices is just a fall-
> out of the current implementation.
>   

This is part of what makes this series so difficult.  As a generic 
guest/host communications channel, this series does not at all meet 
reasonable expectations.  It makes no attempt to deal with things like 
live migration.  It can at best be described as a hack.

The whole thing's a mess because it's never been thought through 
properly which is probably because the actual consumer of it has not 
been released publicly.

I've always advocated that this use case would be better served as a 
_userspace_ interface that implements a protocol on top of an arbitrary 
transport.  It could be a network socket, a virtio device (even 
virtio-console unmodified), a real serial device, etc.

You can do multiplexing, connect/disconnect notification, etc. all as 
elements of a streaming protocol.  Throwing all of these channel 
semantics coupled tightly with the transport and then trying to make a 
kernel interface be what's the supported user interface is really just 
asking for trouble.

-- 
Regards,

Anthony Liguori

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ