[argyllcms] Re: another X error

  • From: Graeme Gill <graeme@xxxxxxxxxxxxx>
  • To: argyllcms@xxxxxxxxxxxxx
  • Date: Sun, 13 Aug 2006 13:29:13 +1000

Frédéric wrote:

Well, I realised that I didn't tried Argyll-0.60 at home - only at work... And I also have a X error (not the same) :o/

X Error of failed request: BadValue (integer parameter out of range for operation)
Major opcode of failed request: 136 (XFree86-VidModeExtension)
Minor opcode of failed request: 4 (XF86VidModeGetMonitor)
Value in failed request: 0x4c
Serial number of failed request: 12
Current serial number in output stream: 12


(unlike Mike, it does not work with 'dispwin -d 1 -r').

I'm using Xorg 7.0/radeon driver, with Mergedfb to have dual screen (this is not Xinerama). I tried in clone mode, and it works fine.

Hal Engel has reported this problem to me as well. Currently I suspect a problem with the NVidia TwinView and/or Mergedfb, not allowing access to the underlying screens, thereby preventing access to the Video LUTs. You can't calibrate a screen unless the Video Luts can be accessed.

I really need someone with this problem to trace through the code
in dispwin.c from line 338 in dispwin.c, and note what happens :-
ie. is the Xinerama extension emulated by Mergedfb/TwinView,
how many screens are reported by Xinerama or ScreenCount(),
which screen does the X protocol error trigger on, etc.

Currently the code assumes that if the Xinerama extension is
present, then only the main X11 protocol accesses emulate having
a merged screen, and that other extensions (such as XFree86-VidModeExtension)
still see each screen as separate. The XF86VidModeGetMonitor() call
is simply to get the name of the screen, while XF86VidModeGet/SetGammaRamp()
calls are used to set the Video LUTs.

If Mergedfb and/or NVidia TwinView provide a single merged screen for
normal X11 protocol accesses, and use the Xinerama extension to provide
hints to applications about how the screens are laid out, but also
make the XFree86-VidModeExtension appear to be connected to only one
screen, then color calibration simply can't work.

Graeme Gill.



Other related posts: