[Spice-devel,protocol,RFC,2/2] protocol: add SPICE_DISPLAY_CAP_HEAD

Submitted by Alon Levy on May 7, 2012, 6:29 a.m.

Details

Message ID 1336372187-19751-3-git-send-email-alevy@redhat.com
State Rejected
Headers show

Not browsing as part of any series.

Commit Message

Alon Levy May 7, 2012, 6:29 a.m.
Signifies that the client will support any SpiceDisplayMsgHead sent.
---
 spice/protocol.h |    4 ++++
 1 file changed, 4 insertions(+)

Patch hide | download patch | download mbox

diff --git a/spice/protocol.h b/spice/protocol.h
index e3342cb..b7d2bca 100644
--- a/spice/protocol.h
+++ b/spice/protocol.h
@@ -122,6 +122,10 @@  enum {
     SPICE_MAIN_CAP_NAME_AND_UUID,
 };
 
+enum {
+    SPICE_DISPLAY_CAP_HEAD,
+};
+
 #include <spice/end-packed.h>
 
 #endif /* _H_SPICE_PROTOCOL */

Comments

On Mon, May 7, 2012 at 8:29 AM, Alon Levy <alevy@redhat.com> wrote:
> Signifies that the client will support any SpiceDisplayMsgHead sent.

What happens if the server has the capability but not the client?

Should the client show the whole primary surface with its multiple
heads, or quit with an error? Can the server do something to limit the
primary surface to a single screen in this case, would that be
preferable?
On Mon, May 07, 2012 at 01:43:58PM +0200, Marc-André Lureau wrote:
> On Mon, May 7, 2012 at 8:29 AM, Alon Levy <alevy@redhat.com> wrote:
> > Signifies that the client will support any SpiceDisplayMsgHead sent.
> 
> What happens if the server has the capability but not the client?
> 
> Should the client show the whole primary surface with its multiple
> heads, or quit with an error? Can the server do something to limit the
> primary surface to a single screen in this case, would that be
> preferable?
> 

I talked about this in the patch, my idea in this case is to have
another interrupt source (INTERRUPT_CLIENT) and to add a QXLClient
struct with the client capabilities. The interrupt indicates a change to
the struct which the driver needs to parse. It sees that the new client
does not support the SPICE_DISPLAY_HEAD capability, and would reduce the
number of heads to 1 (by disconnecting the rest), and make the primary
equal to the only head size.

> -- 
> Marc-André Lureau