Date: Mon, 2 Jun 2008 22:37:20 +0200 (MET DST) From: Joerg Wunsch <j@uriah.heep.sax.de> To: FreeBSD-gnats-submit@FreeBSD.org Subject: ports/124220: [amd64] X.org server runs in infinite loop Message-ID: <20080602203721.05DE04A@uriah.heep.sax.de> Resent-Message-ID: <200806022100.m52L05mM048056@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 124220 >Category: ports >Synopsis: [amd64] X.org server runs in infinite loop >Confidential: no >Severity: serious >Priority: high >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Mon Jun 02 21:00:05 UTC 2008 >Closed-Date: >Last-Modified: >Originator: Joerg Wunsch >Release: FreeBSD 7.0-RELEASE amd64 >Organization: >Environment: FreeBSD dhcp203.local.heep.sax.de 7.0-STABLE FreeBSD 7.0-STABLE #0: Thu May 29 10:35:31 CEST 2008 root@dhcp203.local.heep.sax.de:/usr/obj/usr/src/sys/GENERIC amd64 >Description: When specifiying the "PreferredMode" keyword in the monitor section of xorg.conf, the server enters an infinite loop. >How-To-Repeat: Add Option "PreferredMode" "1280x1024" to xorg.conf. >Fix: The following patch has been obtained from Mandriva Linux, and fixes the issue: Index: Makefile =================================================================== RCS file: /home/ncvs/ports/x11-servers/xorg-server/Makefile,v retrieving revision 1.59 diff -u -r1.59 Makefile --- Makefile 29 May 2008 11:02:54 -0000 1.59 +++ Makefile 2 Jun 2008 20:05:03 -0000 @@ -7,7 +7,7 @@ PORTNAME= xorg-server PORTVERSION= 1.4 -PORTREVISION= 9 +PORTREVISION= 10 PORTEPOCH= 1 CATEGORIES= x11-servers MASTER_SITES= http://xorg.freedesktop.org/releases/individual/xserver/:fdo \ Index: files/patch-Xserver-hw-xfree86-modes-xf86Crtc.c =================================================================== RCS file: files/patch-Xserver-hw-xfree86-modes-xf86Crtc.c diff -N files/patch-Xserver-hw-xfree86-modes-xf86Crtc.c --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ files/patch-Xserver-hw-xfree86-modes-xf86Crtc.c 2 Jun 2008 20:04:52 -0000 @@ -0,0 +1,27 @@ +From 69eced3fea70451645b407c4a5a0a25fed38e3fd Mon Sep 17 00:00:00 2001 +From: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br> +Date: Mon, 28 Jan 2008 16:23:39 -0200 +Subject: [PATCH] Avoid an infinite loop at initialization if PreferredMode option is used and there is more than one mode with the given name. + +--- + hw/xfree86/modes/xf86Crtc.c | 5 ++++- + 1 files changed, 4 insertions(+), 1 deletions(-) + +diff --git a/hw/xfree86/modes/xf86Crtc.c b/hw/xfree86/modes/xf86Crtc.c +index f75e9a4..191feb3 100644 +--- hw/xfree86/modes/xf86Crtc.c ++++ hw/xfree86/modes/xf86Crtc.c +@@ -1410,8 +1410,11 @@ xf86ProbeOutputModes (ScrnInfoPtr scrn, int maxX, int maxY) + + if (preferred_mode) + { +- for (mode = output->probed_modes; mode; mode = mode->next) ++ DisplayModePtr next; ++ ++ for (mode = output->probed_modes; mode; mode = next) + { ++ next = mode->next; + if (!strcmp (preferred_mode, mode->name)) + { + if (mode != output->probed_modes) + >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20080602203721.05DE04A>