Bug 71838 - intel-virtual-output: Cursor not shown on third monitor
Summary: intel-virtual-output: Cursor not shown on third monitor
Alias: None
Product: xorg
Classification: Unclassified
Component: Driver/intel (show other bugs)
Version: git
Hardware: x86-64 (AMD64) Linux (All)
: medium normal
Assignee: Chris Wilson
QA Contact: Intel GFX Bugs mailing list
Depends on:
Reported: 2013-11-20 15:39 UTC by Kirill Müller
Modified: 2013-11-25 14:27 UTC (History)
0 users

See Also:
i915 platform:
i915 features:

As requested, result of intel-virtual-output -b -f | tee ivo.txt (284.00 KB, text/plain)
2013-11-22 15:29 UTC, Kirill Müller
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Kirill Müller 2013-11-20 15:39:29 UTC
I am testing a tri-head setup on 13.10 with my Lenovo T430 with the new xserver-xorg-video-intel and the intel-virtual-output tool. I have my laptop screen, DP1 right of it, and DP2 right of it.

The cursor is not shown at all on the third (rotated) display. I have suspected 7b0771180dc9bb72 to be the cause, but reverting it (or otherwise modifying affected code) did not seem to help.
Comment 1 Chris Wilson 2013-11-20 16:11:47 UTC
I'll be honest and say that I haven't checked with rotations or general transformations. Can you please attach the output of xrandr --verbose?
Comment 2 Kirill Müller 2013-11-20 17:46:02 UTC
I can do it tomorrow morning, in about 15 hours, when I'm in my office again. If you have access to a tri-head system, this should be easy to replicate.
Comment 3 Kirill Müller 2013-11-21 09:55:17 UTC
I have attached my files to the other ticket: https://bugs.freedesktop.org/show_bug.cgi?id=71846
Comment 4 Chris Wilson 2013-11-21 12:12:13 UTC
Can you please update your driver (xf86-video-intel) to the tip of git and so install the fix for rotation in the ddx and a more recent version of intel-virtual-overlay?
Comment 5 Kirill Müller 2013-11-22 12:29:57 UTC
Updated to tip of Git:

git pull
sudo make install

Cursor is still not shown on the third display, even if it's not rotated. Have I forgotten to install something?
Comment 6 Chris Wilson 2013-11-22 13:14:23 UTC
Everything should be ready...

Can you please cd /path/to/xf86-video-intel/tools and change the #if 0 on line 69 of virtual.c and make it #if 1, i.e.

diff --git a/tools/virtual.c b/tools/virtual.c
index 2d5a4e4..c623875 100644
--- a/tools/virtual.c
+++ b/tools/virtual.c
@@ -66,7 +66,7 @@
 #include <fcntl.h>
 #include <assert.h>
-#if 0
+#if 1
 #define DBG(x) printf x
 #define DBG(x)

Run intel-virtual-output -f | tee ivo.txt and set everything up as desired and try moving the cursor onto the third display. Please then attach ivo.txt.
Comment 7 Kirill Müller 2013-11-22 15:29:50 UTC
Created attachment 89644 [details]
As requested, result of intel-virtual-output -b -f | tee ivo.txt

git pull
sudo make install

After starting `intel-virtual-output`, all three monitors were on. The third was in landscape mode. I have moved the cursor from the first to the second (DP-1) to the third (DP-2) monitor, then back to the second monitor. After this I terminated recording with Ctrl+C.

Note that (a part of) the cursor is visible on the *third* monitor if it is right on the edge of the *second* monitor. It disappears as soon as the "hot spot" is on the third monitor.

Thanks a lot for looking into this! I hope you don't have to go through the log line by line ;-)
Comment 8 Kirill Müller 2013-11-22 15:30:22 UTC
(Of course I've applied the patch before.)
Comment 9 Chris Wilson 2013-11-22 17:41:13 UTC

commit 12e974c7bc8c85dbccd3d9ef91c1315e85bbeb6c
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date:   Fri Nov 22 17:37:57 2013 +0000

    Revert "intel-virtual-output: Only track the most recent visibility status of the cursor"
    This reverts commit abf1a16914d993cc150005879375d4bb17fdccf3.
    We need to track visibility over all clones on a display, not just the
    Regression from
    commit abf1a16914d993cc150005879375d4bb17fdccf3 [2.99.906]
    Author: Chris Wilson <chris@chris-wilson.co.uk>
    Date:   Fri Nov 8 17:09:35 2013 +0000
        intel-virtual-output: Only track the most recent visibility status of the curso
    Reported-by: Kirill Müller <mail@kirill-mueller.de>
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=71838
    Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>

If you would like to attach a similar ivo.txt for the rotation failure, I can look at that whilst I try to reproduce.
Comment 10 Kirill Müller 2013-11-25 13:12:55 UTC
Cursor is still not shown on the third display (after git pull, make clean, make, sudo make install)
Comment 11 Kirill Müller 2013-11-25 13:23:00 UTC
Apologies. Everything works after `git pull` (for some reason I keep saying `git fetch` instead...).
Comment 12 Chris Wilson 2013-11-25 14:27:04 UTC
No worries, thank you for testing.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct.