Summary: |
Setting mode with xrandr fails after changing panning region |
Product: |
xorg
|
Reporter: |
Bryce Harrington <bryce> |
Component: |
App/xrandr | Assignee: |
Keith Packard <keithp> |
Status: |
RESOLVED
MOVED
|
QA Contact: |
Xorg Project Team <xorg-team> |
Severity: |
major
|
|
|
Priority: |
medium
|
CC: |
felix.kuehling, xorg-driver-ati
|
Version: |
7.3 (2007.09) | Keywords: |
patch |
Hardware: |
Other | |
|
OS: |
Linux (All) | |
|
Whiteboard: |
2011BRB_Reviewed |
i915 platform:
|
|
i915 features:
|
|
Attachments: |
|
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.
Created attachment 33773 [details] Xorg.0.log Hi Keith, I'm forwarding this bug report from Felix Kuehling. He provides a patch however since it sounds like it only partially fixes the problem I want to run it by you first. [Problem] After setting a panning region, xrandr errors "Configure crtc0 invalid time" and is no longer able to change resolution settings. [Original Report] The problem was observed on both Karmic and Lucid (current as at March 2, 2010) using both the open-source radeon driver and the proprietary fglrx driver on different ATI cards (at least RV730 and RV740). Steps to reproduce (with a 1900x1200 DFP monitor using the fglrx driver, output names are different with radeon): - xrandr --output DFP1 --mode 1440x900 - xrandr --output DFP1 --panning 1920x1200 - pan around - xrandr --output DFP1 --panning 1440x900 - xrandr --output DFP1 --mode 1920x1200 Expected result: - DFP1 should switch mode to 1920x1200, adjusting the desktop size as appropriate Actual result: - mode does not change from 1440x900 - the terminal shows the following message: "xrandr: Configure crtc0 invalid time" - the system remains usable but the mode cannot be changed using xrandr on DFP1 After restarting the Xserver, modes can be changed again. One of our engineers found a workaround in xrandr. It allows the mode to be changed but there are still other error messages: --- bak/x11-xserver-utils-7.4+2ubuntu3/xrandr/xrandr.c 2009-04-01 11:01:55.000000000 -0400 +++ x11-xserver-utils-7.4-panningchg/xrandr/xrandr.c 2010-03-01 18:54:30.000000000 -0500 @@ -1346,7 +1346,10 @@ crtc_apply (crtc_t *crtc) rr_outputs, crtc->noutput); if (s == RRSetConfigSuccess && crtc->panning_info) { if (has_1_3) + { + crtc->panning_info->timestamp = CurrentTime; s = XRRSetPanning (dpy, res, crtc->crtc.xid, crtc->panning_info); + } else fatal ("panning needs RandR 1.3\n"); } Attached are files from a system with two monitors that reproduces the problem as described. Two other systems with only one monitor show slightly different symptoms after the last xrandr --mode call: the screen freezes or stops updating while the mouse pointer is still responsive. I can still move windows around and by the shape of the mouse pointer I can tell that I did move the window. But the image on the screen is not getting updated. 02:00.0 VGA compatible controller [0300]: ATI Technologies Inc Radeon HD 4770 [RV740] [1002:94b3] Subsystem: ATI Technologies Inc Device [1002:0d00]