Hello, this series introduces a new mechanism to identify monitors across the host and guest boundary, using the pair (device_address and device_display_id). device_address is a HW address of a graphics device (a PCI address to be specific, though other address domains can be used as well), device_display_id is an ID of the monitor on that device. This information is gathered from QEMU (regular spice) or spice-streaming-agent (for the streaming channels) and a mapping of (channel_id, monitor_id) -> (device_address, device_display_id) is sent from spice server to the vd_agent. vd_agent uses this mapping to translate the former ID in incoming messages to the latter. This series follows up on the "QXL interface to set monitor ID" series [1] and then Jonathon Jongsma's "Use the PCI addr and display ID" [2] follows up on this to make a complete solution. You can also find the code in the following branches: https://gitlab.freedesktop.org/lukash/spice/commits/monitor-id-v3-4 https://gitlab.freedesktop.org/lukash/spice-streaming-agent/commits/monitor-id-v3-4 https://gitlab.freedesktop.org/lukash/vd_agent/commits/monitor-id-v3-4 Cheers, Lukas Changes since v3: * spice-protocol patches were merged. * Bumped minimum required version of spice-protocol to 0.12.16 for spice, spice-streaming-agent and vd_agent. * spice-streaming-agent: Include cstdlib.h in display-info.cpp. * spice-streaming-agent: use a constant for maximum device address length instead of a number literal. * spice-streaming-agent: explicitly compare with zero for std::string::compare() * spice-streaming-agent: rename local variable output to xoutput. [1] https://lists.freedesktop.org/archives/spice-devel/2019-January/046997.html [2] https://lists.freedesktop.org/archives/spice-devel/2019-January/047547.html -- 2.20.1 _______________________________________________ Spice-devel mailing list Spice-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/spice-devel