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

Bug#420679: wrong screen size reported by xinerama



Package: xserver-xorg-core
Version: 2:1.3.0.0.dfsg-2
Severity: normal

--- Please enter the report below this line. ---

Hi,

I'm using nvidia video adapter with dual screen setup: one is LCD panel 
(1440x900) and another one is TV (800x600). They are separate screens (no 
TwinView) and Xinerama is disabled in xorg.conf. But after latest xorg 
upgrade I've noticed that Xinerama is enabled on both screens and that the 
Xinerama screen dimensions are wrong. Here's the proof:

[busa@stratosphere 09:12:57 xineramainfo]$ DISPLAY=:0.0 ./xinerama-info
Xinerama is enabled on :0.0 (1 screen(s) available)
Xinerama screen 0: 1440x900+0+0
[busa@stratosphere 09:15:30 xineramainfo]$ DISPLAY=:0.1 ./xinerama-info
Xinerama is enabled on :0.1 (1 screen(s) available)
Xinerama screen 0: 1440x900+0+0

xinerama-info is a simple C program, which queries Xinerama info from the 
server. I'm attaching its source just in case. Also attached is gzipped 
xdpyinfo output.

Please note that this likely has nothing to do with nvidia drivers, since when 
I was using 1.2 version of xserver-xorg-core everything was fine, and with 
1.2.999 I had exactly the same issue.

Thanks,
Roman

--- System information. ---
Architecture: i386
Kernel:       Linux 2.6.20.4-0-k7-swsusp2

Debian Release: lenny/sid
  500 unstable        debian.nsu.ru 
    1 experimental    debian.nsu.ru 

--- Package information. ---
Depends                (Version) | Installed
================================-+-================
x11-common          (>= 1:7.0.0) | 1:7.2-1
libc6                   (>= 2.5) | 2.5-2
libdrm2               (>= 2.3.0) | 2.3.0-4
libfontenc1                      | 1:1.0.4-2
libgcc1          (>= 1:4.1.1-12) | 1:4.2-20070307-1
libxau6                          | 1:1.0.3-2
libxdmcp6                        | 1:1.0.2-2
libxfont1                        | 1:1.2.8-1
xserver-xorg                     | 1:7.2-1
# XF86Config-4 (XFree86 X server configuration file) generated by dexconf, the
# Debian X Configuration tool, using values from the debconf database.
#
# Edit this file with caution, and see the XF86Config-4 manual page.
# (Type "man XF86Config-4" at the shell prompt.)
#
# This file is automatically updated on xserver-xfree86 package upgrades *only*
# if it has not been modified since the last upgrade of the xserver-xfree86
# package.
#
# If you have edited this file but would like it to be automatically updated
# again, run the following commands as root:
#
#   cp /etc/X11/XF86Config-4 /etc/X11/XF86Config-4.custom
#   md5sum /etc/X11/XF86Config-4 > /var/lib/xfree86/XF86Config-4.md5sum
#   dpkg-reconfigure xserver-xfree86

Section "Files"
	FontPath	"unix/:7100"			# local font server
	# if the local font server has problems, we can fall back on these
	FontPath	"/usr/local/share/fonts/windows"
	FontPath	"/usr/local/share/fonts/wine"
	FontPath	"/usr/local/share/fonts/extra"
	FontPath	"/usr/share/fonts/X11/Type1"
	FontPath	"/usr/share/fonts/X11/CID"
	FontPath	"/usr/share/fonts/X11/misc"
	FontPath	"/usr/share/fonts/X11/cyrillic"
	FontPath	"/usr/share/fonts/X11/100dpi"
	FontPath	"/usr/share/fonts/X11/75dpi"
EndSection

Section "Extensions"
    Option	"Composite"	"enable"
    Option	"RENDER"	"enable"
EndSection

Section "Module"
	Load	"dbe"
	Load	"extmod"
	Load	"glx"
	Load	"int10"
	Load	"record"
	Load	"freetype"
	Load	"type1"
EndSection

Section "InputDevice"
	Identifier	"Generic Keyboard"
	Driver		"keyboard"
	Option		"CoreKeyboard"
	Option		"XkbRules"	"xfree86"
	Option		"XkbModel"	"pc104"
	Option		"XkbLayout"	"us,ru"
	Option		"XkbOptions" "grp:menu_toggle,grp_led:scroll"
	Option		"XkbVariant" ",winkeys"
EndSection

Section "InputDevice"
	Identifier	"Configured Mouse"
	Driver		"mouse"
	Option		"CorePointer"
	Option		"Device"		"/dev/psaux"
	Option		"Protocol"		"ImPS/2"
	Option		"ZAxisMapping"	"4 5"
EndSection

Section "Device"
	Identifier	"nVidia0"
	Driver		"nvidia"
	BusID		"PCI:2:0:0"
	#Option		"TVOutFormat"	"COMPOSITE"
	Option		"TVOutFormat"	"AUTOSELECT"
	Option		"NvAgp"	"0"
	Option		"RenderAccel" "true"
	Option		"AllowGLXWithComposite" "true"
	Option		"TripleBuffer" "true"
	Option		"AddARGBGLXVisuals"
	Screen		0
EndSection

Section "Device"
	Identifier	"nVidia1"
	Driver		"nvidia"
	BusID		"PCI:2:0:0"
#     Option		"TVOutFormat"	"COMPOSITE"
	Option		"NvAgp"	"0"
	Screen		1
EndSection

Section "Monitor"
	Identifier	"Philips 170S4FG"
	HorizSync	30-82
	VertRefresh	56-76
	Option		"DPMS"
	DisplaySize 337	270
EndSection

Section "Monitor"
	Identifier	"TV"
	HorizSync	30-60
	VertRefresh	70
EndSection

Section "Screen"
	Identifier		"MonitorScreen"
	Device			"nVidia0"
	Monitor			"Philips 170S4FG"
	DefaultDepth	24
	SubSection "Display"
		Depth		24
		Modes		"1440x900" "1024x768" "800x600" "640x480"
	EndSubSection
EndSection

Section "Screen"
	Identifier		"TVScreen"
	Device			"nVidia1"
	Monitor			"TV"
	DefaultDepth	24
	SubSection "Display"
		Depth		24
		Modes		"800x600"
	EndSubSection
EndSection

Section "ServerLayout"
	Identifier	"Default Layout"
	Screen 	0 	"MonitorScreen"
	Screen	1	"TVScreen" RightOf "MonitorScreen"
	InputDevice	"Generic Keyboard"
	InputDevice	"Configured Mouse"
EndSection

Section "ServerFlags"
	Option "Xinerama" "False"
EndSection
#include <X11/extensions/Xinerama.h>
#include <X11/X.h>
#include <X11/Xlib.h>

#include <stdio.h>
#include <stdlib.h>

int main(int argc, char **argv)
{
	Display *dpy;

    if ((dpy = XOpenDisplay(NULL)) == NULL) {
        fprintf(stderr, "%s: can't open %s\n", argv[0], XDisplayName(NULL));
        exit(1);
    }

	if (XineramaIsActive(dpy)) {
		XineramaScreenInfo *screens;
		int nscreens, i;
		screens = XineramaQueryScreens(dpy, &nscreens);
		printf("Xinerama is enabled on %s (%d screen(s) available)\n", XDisplayName(NULL), nscreens);
		for (i = 0; i < nscreens; i++)
			printf("Xinerama screen %d: %dx%d+%d+%d\n", 
					screens[i].screen_number,
					screens[i].width,
					screens[i].height,
					screens[i].x_org,
					screens[i].y_org);
	} else 
		printf("Xinerama is not enabled on %s\n", XDisplayName(NULL));

	XCloseDisplay(dpy);
}

Attachment: xdpyinfo.out.gz
Description: GNU Zip compressed data


Reply to: