Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 14 Dec 2012 00:30:52 +0100
From:      Niclas Zeising <zeising@freebsd.org>
To:        Johannes Dieterich <dieterich.joh@gmail.com>
Cc:        Dimitry Andric <dim@FreeBSD.org>, freebsd-current@FreeBSD.org, David Chisnall <theraven@FreeBSD.org>
Subject:   Re: new xorg segfault 11 with KMS
Message-ID:  <50CA652C.5010101@freebsd.org>
In-Reply-To: <50CA50C6.2080501@gmail.com>
References:  <CABquGzXefGp%2BD0qmaAboYQSGip-4A3XwQUT7M%2BMfVqSZjQ6i9Q@mail.gmail.com> <50CA4A58.7070109@FreeBSD.org> <50CA4D3D.3040401@gmail.com> <07938D0C-15C4-430F-9E1F-828DB01CDFB7@FreeBSD.org> <50CA50C6.2080501@gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
This is a multi-part message in MIME format.
--------------050607000409020003060108
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit

Can you please try the attached patch, against x11-servers/xorg-server.
 Apply it and recompile xorg-server with normal flags (that is, no
debugging) and let me and the list know the result when starting X.
Regards!
-- 
Niclas Zeising

--------------050607000409020003060108
Content-Type: text/x-patch;
 name="xorg-server.clangfix.diff"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
 filename="xorg-server.clangfix.diff"

Index: x11-servers/xorg-server/Makefile
===================================================================
--- x11-servers/xorg-server/Makefile	(revision 308805)
+++ x11-servers/xorg-server/Makefile	(working copy)
@@ -29,7 +29,8 @@
 XORG_REVISION=	1
 PLIST_SUB+=	OLD="@comment " NEW=""
 EXTRA_PATCHES+=	${FILESDIR}/extra-hw_dmx_glxProxy_compsize.h \
-		${FILESDIR}/extra-hw_dmx_glxProxy_glxcmds.h
+		${FILESDIR}/extra-hw_dmx_glxProxy_glxcmds.h \
+		${FILESDIR}/extra-clang
 .else
 XORG_VERSION=	1.7.7
 XORG_REVISION=	6
Index: x11-servers/xorg-server/files/extra-clang
===================================================================
--- x11-servers/xorg-server/files/extra-clang	(revision 0)
+++ x11-servers/xorg-server/files/extra-clang	(working copy)
@@ -0,0 +1,53 @@
+--- hw/xfree86/common/xf86Xinput.c.orig	2012-12-13 23:58:55.673738569 +0100
++++ hw/xfree86/common/xf86Xinput.c	2012-12-13 23:59:52.528738525 +0100
+@@ -479,7 +479,7 @@
+ MatchAttrToken(const char *attr, struct list *patterns,
+                int (*compare)(const char *attr, const char *pattern))
+ {
+-    const xf86MatchGroup *group;
++    const xf86MatchGroup *group = NULL;
+ 
+     /* If there are no patterns, accept the match */
+     if (list_is_empty(patterns))
+--- hw/xfree86/parser/InputClass.c.orig	2012-12-14 00:03:07.149734651 +0100
++++ hw/xfree86/parser/InputClass.c	2012-12-14 00:04:09.522735172 +0100
+@@ -338,7 +338,8 @@
+     XF86ConfInputClassPtr prev;
+ 
+     while (ptr) {
+-        xf86MatchGroup *group, *next;
++        xf86MatchGroup *group = NULL;
++        xf86MatchGroup *next;
+         char **list;
+ 
+         TestFree(ptr->identifier);
+--- hw/xfree86/dri2/dri2.c.orig	2012-12-14 00:06:39.680738243 +0100
++++ hw/xfree86/dri2/dri2.c	2012-12-14 00:08:14.310729622 +0100
+@@ -201,7 +201,7 @@
+ static DRI2DrawableRefPtr
+ DRI2LookupDrawableRef(DRI2DrawablePtr pPriv, XID id)
+ {
+-    DRI2DrawableRefPtr ref;
++    DRI2DrawableRefPtr ref = NULL;
+ 
+     list_for_each_entry(ref, &pPriv->reference_list, link) {
+ 	if (ref->id == id)
+@@ -267,7 +267,8 @@
+ {
+     DRI2DrawablePtr pPriv = p;
+     DRI2ScreenPtr   ds = pPriv->dri2_screen;
+-    DRI2DrawableRefPtr ref, next;
++    DRI2DrawableRefPtr ref = NULL;
++    DRI2DrawableRefPtr  next;
+     WindowPtr pWin;
+     PixmapPtr pPixmap;
+     DrawablePtr pDraw;
+@@ -534,7 +535,7 @@
+ DRI2InvalidateDrawable(DrawablePtr pDraw)
+ {
+     DRI2DrawablePtr pPriv = DRI2GetDrawable(pDraw);
+-    DRI2DrawableRefPtr ref;
++    DRI2DrawableRefPtr ref = NULL;
+ 
+     if (!pPriv)
+         return;

--------------050607000409020003060108--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?50CA652C.5010101>