Re: [RFC PATCH v2 00/20] Monitor ID rework

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 2018-08-23 at 22:42 +0200, Gerd Hoffmann wrote:
>   Hi,
> 
> > "we only support" seems to just state the use cases before adding
> > vGPU but we are trying to support vGPU cases.
> > If even we decide that for vGPU cards we always have monitor_id == 0
> 
> Yes, we want this for sure.  One channel per display.

For sure? This deserves a justification.

> > (that is multiple DisplayChannels for each vGPU) we still have the
> > issue of id matching with the agent which these patches are trying to
> > deal with.
> 
> Yes.  *That* is the underlying problem.  There is no guest-visible link
> between display device and spice channel.

It is one of two problems. We are discussing this over and over though.
I'll wait for Jonathon to post a summary of yesterday's IRC discussion,
as he may do a better job explaining it (I've explained it several
times throughout the discussion, given that we are still discussing it,
I probably wasn't very successful ;))

> Except when the device is
> qxl, because qxl has a channel-id field somewhere (in qxl rom IIRC)
> which the guest can read.

Really? Can you describe how the guest could read that? Thanks.

> And it is not limited to vGPU.  Try place two emulated display devices
> into one guest (not using qxl).  You'll face the very same issue.
> 
> Placing both channel_id and monitor_id into the messages isn't going to
> solve this.

No, the way I solve this is by having a hash table on the server, which
maps (channel_id, monitor_id) -> guest_output_id.

The reason for using (channel_id, monitor_id) is that it is the only
unambiguous unique identifier of a monitor on the server.

The guest_output_id is sent to the server from the streaming agent and
it is the xrandr output id. Therefore we obviously have it only for
streamed monitors. For other, old-style monitors, we still fall back to
channel_id + monitor_id.

This is obviously quite sub-optimal, but it seems to me it's the best
we can do. The details are in the patches...

Cheers,
Lukas

> cheers,
>   Gerd
> 
> _______________________________________________
> Spice-devel mailing list
> Spice-devel@xxxxxxxxxxxxxxxxxxxxx
> https://lists.freedesktop.org/mailman/listinfo/spice-devel
_______________________________________________
Spice-devel mailing list
Spice-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/spice-devel




[Index of Archives]     [Linux Virtualization]     [Linux Virtualization]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]     [Monitors]