rpms/xorg-x11-server/devel xorg-x11-server-1.1.0-cw-crash-fix.patch, NONE, 1.1 xorg-x11-server-1.1.0-edid-mode-injection-3.patch, NONE, 1.1 xorg-x11-server-1.1.0-hush-crash-message.patch, NONE, 1.1 xorg-x11-server-1.1.0-pci-scan-fixes.patch, NONE, 1.1 xorg-x11-server.spec, 1.85, 1.86

fedora-cvs-commits at redhat.com fedora-cvs-commits at redhat.com
Mon Jun 19 19:07:22 UTC 2006


Author: ajackson

Update of /cvs/dist/rpms/xorg-x11-server/devel
In directory cvs.devel.redhat.com:/tmp/cvs-serv9896

Modified Files:
	xorg-x11-server.spec 
Added Files:
	xorg-x11-server-1.1.0-cw-crash-fix.patch 
	xorg-x11-server-1.1.0-edid-mode-injection-3.patch 
	xorg-x11-server-1.1.0-hush-crash-message.patch 
	xorg-x11-server-1.1.0-pci-scan-fixes.patch 
Log Message:
- Disable filling in monitor gamma info from EDID momentarily, since drivers
  will use that field to set the card's gamma ramp.
- Backport some stuff from git: cw crash fix, faster pci scanning, and a
  log message cleanup.


xorg-x11-server-1.1.0-cw-crash-fix.patch:
 cw_ops.c |    4 ++++
 1 files changed, 4 insertions(+)

--- NEW FILE xorg-x11-server-1.1.0-cw-crash-fix.patch ---
--- xorg-server-1.1.0/miext/cw/cw_ops.c.cw-crash	2006-02-10 17:00:29.000000000 -0500
+++ xorg-server-1.1.0/miext/cw/cw_ops.c	2006-06-19 14:11:54.000000000 -0400
@@ -28,6 +28,7 @@
 #include <stdlib.h>
 
 #include "gcstruct.h"
+#include "pixmapstr.h"
 #include "cw.h"
 
 #define SETUP_BACKING_DST(_pDst, _pGC) \
@@ -43,6 +44,9 @@
 	&src_off_y)
 
 #define PROLOGUE(pGC) do { \
+    if (pBackingGC->serialNumber != pBackingDst->serialNumber) { \
+	ValidateGC(pBackingDst, pBackingGC); \
+    } \
     pGC->funcs = pGCPrivate->wrapFuncs;\
     pGC->ops = pGCPrivate->wrapOps;\
 } while (0)

xorg-x11-server-1.1.0-edid-mode-injection-3.patch:
 ddcProperty.c |    6 +++++-
 1 files changed, 5 insertions(+), 1 deletion(-)

--- NEW FILE xorg-x11-server-1.1.0-edid-mode-injection-3.patch ---
--- xorg-server-1.1.0/hw/xfree86/ddc/ddcProperty.c.edid3	2006-06-16 14:50:06.000000000 -0400
+++ xorg-server-1.1.0/hw/xfree86/ddc/ddcProperty.c	2006-06-16 14:51:38.000000000 -0400
@@ -303,7 +303,11 @@
 
     Monitor->DDC = DDC;
 
-    if (DDC->features.gamma > 0.0) {
+    /*
+     * Don't want to fill this in yet, drivers will (wrongly!) set their
+     * gamma ramp based on this info.
+     */
+    if (0 && DDC->features.gamma > 0.0) {
         Monitor->gamma.red = DDC->features.gamma;
         Monitor->gamma.green = DDC->features.gamma;
         Monitor->gamma.blue = DDC->features.gamma;

xorg-x11-server-1.1.0-hush-crash-message.patch:
 xf86Events.c |   11 -----------
 1 files changed, 11 deletions(-)

--- NEW FILE xorg-x11-server-1.1.0-hush-crash-message.patch ---
--- xorg-server-1.1.0/hw/xfree86/common/xf86Events.c.crash-message	2006-03-25 14:52:03.000000000 -0500
+++ xorg-server-1.1.0/hw/xfree86/common/xf86Events.c	2006-06-19 14:32:16.000000000 -0400
@@ -1,4 +1,3 @@
-/* $XFree86: xc/programs/Xserver/hw/xfree86/common/xf86Events.c,v 3.159 2003/11/22 04:22:11 dawes Exp $ */
 /*
  * Copyright 1990,91 by Thomas Roell, Dinkelscherben, Germany.
  *
@@ -48,9 +47,6 @@
  * authorization from the copyright holder(s) and author(s).
  */
 
-/* $XConsortium: xf86Events.c /main/46 1996/10/25 11:36:30 kaleb $ */
-/* $XdotOrg: xserver/xorg/hw/xfree86/common/xf86Events.c,v 1.22 2006/03/25 19:52:03 ajax Exp $ */
-
 /* [JCH-96/01/21] Extended std reverse map to four buttons. */
 
 #ifdef HAVE_XORG_CONFIG_H
@@ -1482,13 +1478,6 @@
 #ifdef XF86BIGFONT
   XF86BigfontCleanup();
 #endif
-#if defined(XFree86LOADER)
-  if (xf86Initialising)
-      LoaderCheckUnresolved(LD_RESOLV_IFDONE);
-  ErrorF("\n"
-	 "   *** If unresolved symbols were reported above, they might not\n"
-	 "   *** be the reason for the server aborting.\n");
-#endif
 
   xorg_backtrace();
     

xorg-x11-server-1.1.0-pci-scan-fixes.patch:
 bus/Pci.c       |    6 -
 bus/Pci.h       |    2 
 bus/linuxPci.c  |   51 ++++++---
 linux/lnx_pci.c |  317 ++++++++++++++++++++++++++------------------------------
 4 files changed, 189 insertions(+), 187 deletions(-)

--- NEW FILE xorg-x11-server-1.1.0-pci-scan-fixes.patch ---
--- xorg-server-1.1.0/hw/xfree86/os-support/bus/Pci.h.pci-scan	2006-06-19 14:43:59.000000000 -0400
+++ xorg-server-1.1.0/hw/xfree86/os-support/bus/Pci.h	2006-06-19 14:44:37.000000000 -0400
@@ -439,6 +439,8 @@
 extern int    pciFuncNum;
 extern PCITAG pciDeviceTag;
 
+extern int    xf86MaxPciDevs;
+
 extern pciBusInfo_t  *pciBusInfo[];
 
 #endif /* _PCI_H */
--- xorg-server-1.1.0/hw/xfree86/os-support/bus/linuxPci.c.pci-scan	2006-05-16 16:45:20.000000000 -0400
+++ xorg-server-1.1.0/hw/xfree86/os-support/bus/linuxPci.c	2006-06-19 14:43:36.000000000 -0400
@@ -108,6 +108,9 @@
 /* bridge      */	NULL
 };
 
+/* from lnx_pci.c. */
+extern int lnxPciInit(void);
+
 void
 linuxPciInit()
 {
@@ -123,6 +126,7 @@
 	pciFindFirstFP = pciGenFindFirst;
 	pciFindNextFP  = pciGenFindNext;
 	pciSetOSBIOSPtr(linuxPciHandleBIOS);
+        xf86MaxPciDevs = lnxPciInit();
 }
 
 static int
@@ -130,32 +134,45 @@
 {
 	static int	lbus,ldev,lfunc,fd = -1,is_write = 0;
 	int		bus, dev, func;
-	char		file[32];
+	char		file[64];
 	struct stat	ignored;
+	static int is26 = -1;
 
 	bus  = PCI_BUS_FROM_TAG(tag);
 	dev  = PCI_DEV_FROM_TAG(tag);
 	func = PCI_FUNC_FROM_TAG(tag);
+	if (is26 == -1) {
+		if (stat("/sys/bus/pci",&ignored) < 0)
+			is26 = 0;
+		else
+			is26 = 1;
+	}
+	
 	if (fd == -1 || (write && (!is_write))
 	    || bus != lbus || dev != ldev || func != lfunc) {
 		if (fd != -1)
 			close(fd);
-		if (bus < 256) {
-		        sprintf(file,"/proc/bus/pci/%02x",bus);
-			if (stat(file, &ignored) < 0)
-				sprintf(file, "/proc/bus/pci/0000:%02x/%02x.%1x",
-					bus, dev, func);
-			else
-				sprintf(file, "/proc/bus/pci/%02x/%02x.%1x",
-					bus, dev, func);
-		} else {
-		        sprintf(file,"/proc/bus/pci/%04x",bus);
-			if (stat(file, &ignored) < 0)
-				sprintf(file, "/proc/bus/pci/0000:%04x/%02x.%1x",
-					bus, dev, func);
-			else
-				sprintf(file, "/proc/bus/pci/%04x/%02x.%1x",
-					bus, dev, func);
+		if (is26)
+			sprintf(file,"/sys/bus/pci/devices/0000:%02x:%02x.%01x/config",
+				bus, dev, func);
+		else {
+			if (bus < 256) {
+				sprintf(file,"/proc/bus/pci/%02x",bus);
+				if (stat(file, &ignored) < 0)
+					sprintf(file, "/proc/bus/pci/0000:%02x/%02x.%1x",
+						bus, dev, func);
+				else
+					sprintf(file, "/proc/bus/pci/%02x/%02x.%1x",
+						bus, dev, func);
+			} else {
+				sprintf(file,"/proc/bus/pci/%04x",bus);
+				if (stat(file, &ignored) < 0)
+					sprintf(file, "/proc/bus/pci/0000:%04x/%02x.%1x",
+						bus, dev, func);
+				else
+					sprintf(file, "/proc/bus/pci/%04x/%02x.%1x",
+						bus, dev, func);
+			}
 		}
 		if (write) {
 		    fd = open(file,O_RDWR);
--- xorg-server-1.1.0/hw/xfree86/os-support/bus/Pci.c.pci-scan	2006-05-18 19:51:34.000000000 -0400
+++ xorg-server-1.1.0/hw/xfree86/os-support/bus/Pci.c	2006-06-19 14:43:36.000000000 -0400
@@ -238,6 +238,8 @@
 
 static int (*pciOSHandleBIOS)(PCITAG Tag, int basereg, unsigned char *buf, int len);
 
+int xf86MaxPciDevs = MAX_PCI_DEVICES;
+
 /*
  * Platform specific PCI function pointers.
  *
@@ -938,7 +940,7 @@
     xf86MsgVerb(X_INFO, 2, "PCI: PCI scan (all values are in hex)\n");
 #endif
 
-    while (idx < MAX_PCI_DEVICES && tag != PCI_NOT_FOUND) {
+    while (idx < xf86MaxPciDevs && tag != PCI_NOT_FOUND) {
 	devp = xcalloc(1, sizeof(pciDevice));
 	if (!devp) {
 	    xf86Msg(X_ERROR,
@@ -1001,6 +1003,8 @@
 #endif
 
 	pci_devp[idx++] = devp;
+        if (idx == xf86MaxPciDevs)
+            break;
 	tag = pciFindNext();
 
 #ifdef DEBUGPCI
--- xorg-server-1.1.0/hw/xfree86/os-support/linux/lnx_pci.c.pci-scan	2006-05-18 19:51:34.000000000 -0400
+++ xorg-server-1.1.0/hw/xfree86/os-support/linux/lnx_pci.c	2006-06-19 14:43:36.000000000 -0400
@@ -23,70 +23,113 @@
 #define PCIADDR_FMT		"%lx"
 #endif
 
-FILE *xf86OSLinuxPCIFile = NULL;
+int lnxPciInit(void);
+
+struct pci_dev {
+    unsigned int bus;
+    unsigned int devfn;
+    PCIADDR_TYPE offset[7];
+    PCIADDR_TYPE size[7];
+    struct pci_dev *next;
+};
+
+struct pci_dev *xf86OSLinuxPCIDevs = NULL;
+int xf86OSLinuxNumPciDevs = 0;
+
+static struct pci_dev *xf86OSLinuxGetPciDevs(void) {
+    char c[0x200];
+    FILE *file = NULL;
+    struct pci_dev *tmp, *ret = NULL;
+    unsigned int num;
+    char *res;
+    
+    file = fopen("/proc/bus/pci/devices", "r");
+    if (!file) return NULL;
+
+    xf86OSLinuxNumPciDevs = 0;
+    
+    do {
+        res = fgets(c, 0x1ff, file);
+        if (res) {
+            tmp = xcalloc(sizeof(struct pci_dev),1);
+            num = sscanf(res,
+                /*bus+dev vendorid deviceid irq */
+                "%02x%02x\t%*04x%*04x\t%*x"
+                /* 7 PCI resource base addresses */
+                "\t" PCIADDR_FMT
+                "\t" PCIADDR_FMT
+                "\t" PCIADDR_FMT
+                "\t" PCIADDR_FMT
+                "\t" PCIADDR_FMT
+                "\t" PCIADDR_FMT
+                "\t" PCIADDR_FMT
+                /* 7 PCI resource sizes, and then optionally a driver name */
+                "\t" PCIADDR_FMT
+                "\t" PCIADDR_FMT
+                "\t" PCIADDR_FMT
+                "\t" PCIADDR_FMT
+                "\t" PCIADDR_FMT
+                "\t" PCIADDR_FMT
+                "\t" PCIADDR_FMT,
+                &tmp->bus,&tmp->devfn,&tmp->offset[0],&tmp->offset[1],&tmp->offset[2],&tmp->offset[3],
+                &tmp->offset[4],&tmp->offset[5],&tmp->offset[6], &tmp->size[0], &tmp->size[1], &tmp->size[2],
+                &tmp->size[3], &tmp->size[4], &tmp->size[5], &tmp->size[6]);
+            if (num != 16) {  /* apparantly not 2.3 style */
+                xfree(tmp);
+                fclose(file);
+                return NULL;
+            }
+            if (ret) {
+                tmp->next = ret;
+            }
+            ret = tmp;
+            xf86OSLinuxNumPciDevs++;
+        }
+    } while (res);
+    fclose(file);
+    return ret;
+}
+
+/* not to be confused with linuxPciInit (i.e. ARCH_PCI_INIT), found in
+ * os-support/bus/linuxPci.c. */
+int lnxPciInit(void) {
+    if (!xf86OSLinuxPCIDevs)
+        xf86OSLinuxPCIDevs = xf86OSLinuxGetPciDevs();
+    return xf86OSLinuxNumPciDevs;
+}
 
 Bool
 xf86GetPciSizeFromOS(PCITAG tag, int index, int* bits)
 {
-    char c[0x200];
-    char *res;
-    unsigned int bus, devfn, dev, fn;
-    unsigned PCIADDR_TYPE size[7];
-    unsigned int num;
+    unsigned int dev, fn;
     signed PCIADDR_TYPE Size;
+    struct pci_dev *device;
 
     if (index > 7)
-	return FALSE;
+        return FALSE;
     
-    if (!xf86OSLinuxPCIFile && \
-        !(xf86OSLinuxPCIFile = fopen("/proc/bus/pci/devices","r")))
-	return FALSE;
-    do {
-	res = fgets(c,0x1ff,xf86OSLinuxPCIFile);
-	if (res) {
-	    num = sscanf(res,
-			 /*bus+dev vendorid deviceid irq */
-			 "%02x%02x\t%*04x%*04x\t%*x"
-			 /* 7 PCI resource base addresses */
-			 "\t" PCIADDR_IGNORE_FMT
-			 "\t" PCIADDR_IGNORE_FMT
-			 "\t" PCIADDR_IGNORE_FMT
-			 "\t" PCIADDR_IGNORE_FMT
-			 "\t" PCIADDR_IGNORE_FMT
-			 "\t" PCIADDR_IGNORE_FMT
-			 "\t" PCIADDR_IGNORE_FMT
-			 /* 7 PCI resource sizes, and then optionally a driver name */
-			 "\t" PCIADDR_FMT
-			 "\t" PCIADDR_FMT
-			 "\t" PCIADDR_FMT
-			 "\t" PCIADDR_FMT
-			 "\t" PCIADDR_FMT
-			 "\t" PCIADDR_FMT
-			 "\t" PCIADDR_FMT,
-			 &bus,&devfn,&size[0],&size[1],&size[2],&size[3],
-			 &size[4],&size[5],&size[6]);
-	    if (num != 9) {  /* apparantly not 2.3 style */ 
-		fseek(xf86OSLinuxPCIFile, 0L, SEEK_SET);
-		return FALSE;
-	    }
-	    dev = devfn >> 3;
-	    fn = devfn & 0x7;
-	    if (tag == pciTag(bus,dev,fn)) {
-		*bits = 0;
-		if (size[index] != 0) {
-		    Size = size[index] - ((PCIADDR_TYPE) 1);
-		    while (Size & ((PCIADDR_TYPE) 0x01)) {
-			Size = Size >> ((PCIADDR_TYPE) 1);
-			(*bits)++;
-		    }
-		}
-		fseek(xf86OSLinuxPCIFile, 0L, SEEK_SET);
-		return TRUE;
-	    }
-	}
-    } while (res);
+    if (!xf86OSLinuxPCIDevs) {
+        xf86OSLinuxPCIDevs = xf86OSLinuxGetPciDevs();
+    }
+    if (!xf86OSLinuxPCIDevs)
+        return FALSE;
+    
+    for (device = xf86OSLinuxPCIDevs; device; device = device->next) {
+        dev = device->devfn >> 3;
+	fn = device->devfn & 0x7;
+        if (tag == pciTag(device->bus,dev,fn)) {
+            *bits = 0;
+            if (device->size[index] != 0) {
+                Size = device->size[index] - ((PCIADDR_TYPE) 1);
+                while (Size & ((PCIADDR_TYPE) 0x01)) {
+                    Size = Size >> ((PCIADDR_TYPE) 1);
+                    (*bits)++;
+                }
+            }
+            return TRUE;
+        }
+    }
 
-    fseek(xf86OSLinuxPCIFile, 0L, SEEK_SET);
     return FALSE;
 }
 
@@ -96,59 +139,28 @@
 Bool
 xf86GetPciOffsetFromOS(PCITAG tag, int index, unsigned long* bases)
 {
-    FILE *file;
-    char c[0x200];
-    char *res;
-    unsigned int bus, devfn, dev, fn;
-    unsigned PCIADDR_TYPE offset[7];
-    unsigned int num;
+    unsigned int dev, fn;
+    struct pci_dev *device;
 
     if (index > 7)
         return FALSE;
 
-    if (!(file = fopen("/proc/bus/pci/devices","r")))
+    if (!xf86OSLinuxPCIDevs) {
+        xf86OSLinuxPCIDevs = xf86OSLinuxGetPciDevs();
+    }
+    if (!xf86OSLinuxPCIDevs)
         return FALSE;
-    do {
-        res = fgets(c,0x1ff,file);
-        if (res) {
-            num = sscanf(res,
-                         /*bus+dev vendorid deviceid irq */
-                         "%02x%02x\t%*04x%*04x\t%*x"
-                         /* 7 PCI resource base addresses */
-                         "\t" PCIADDR_FMT
-                         "\t" PCIADDR_FMT
-                         "\t" PCIADDR_FMT
-                         "\t" PCIADDR_FMT
-                         "\t" PCIADDR_FMT
-                         "\t" PCIADDR_FMT
-                         "\t" PCIADDR_FMT
-                         /* 7 PCI resource sizes, and then optionally a driver name */
-                         "\t" PCIADDR_IGNORE_FMT
-                         "\t" PCIADDR_IGNORE_FMT
-                         "\t" PCIADDR_IGNORE_FMT
-                         "\t" PCIADDR_IGNORE_FMT
-                         "\t" PCIADDR_IGNORE_FMT
-                         "\t" PCIADDR_IGNORE_FMT
-                         "\t" PCIADDR_IGNORE_FMT,
-                         &bus,&devfn,&offset[0],&offset[1],&offset[2],&offset[3],
-                         &offset[4],&offset[5],&offset[6]);
-            if (num != 9) {  /* apparantly not 2.3 style */
-                fclose(file);
-                return FALSE;
-            }
 
-            dev = devfn >> 3;
-            fn = devfn & 0x7;
-            if (tag == pciTag(bus,dev,fn)) {
-                /* return the offset for the index requested */
-                *bases = offset[index];
-                fclose(file);
-                return TRUE;
-            }
+    for (device = xf86OSLinuxPCIDevs; device; device = device->next) {
+        dev = device->devfn >> 3;
+        fn = device->devfn & 0x7;
+        if (tag == pciTag(device->bus,dev,fn)) {
+            /* return the offset for the index requested */
+            *bases = device->offset[index];
+            return TRUE;
         }
-    } while (res);
+    }
 
-    fclose(file);
     return FALSE;
 }
 
@@ -156,81 +168,48 @@
 unsigned long
 xf86GetOSOffsetFromPCI(PCITAG tag, int space, unsigned long base)
 {
-    FILE *file;
-    char c[0x200];
-    char *res;
-    unsigned int bus, devfn, dev, fn;
-    unsigned PCIADDR_TYPE offset[7];
-    unsigned PCIADDR_TYPE size[7];
-    unsigned int num;
+    unsigned int dev, fn;
     unsigned int ndx;
+    struct pci_dev *device;
 
-    if (!(file = fopen("/proc/bus/pci/devices","r")))
-        return 0;
-    do {
-        res = fgets(c,0x1ff,file);
-        if (res) {
-            num = sscanf(res,
-                         /*bus+dev vendorid deviceid irq */
-                         "%02x%02x\t%*04x%*04x\t%*x"
-                         /* 7 PCI resource base addresses */
-                         "\t" PCIADDR_FMT
-                         "\t" PCIADDR_FMT
-                         "\t" PCIADDR_FMT
-                         "\t" PCIADDR_FMT
-                         "\t" PCIADDR_FMT
-                         "\t" PCIADDR_FMT
-                         "\t" PCIADDR_FMT
-                         /* 7 PCI resource sizes, and then optionally a driver name */
-                         "\t" PCIADDR_FMT
-                         "\t" PCIADDR_FMT
-                         "\t" PCIADDR_FMT
-                         "\t" PCIADDR_FMT
-                         "\t" PCIADDR_FMT
-                         "\t" PCIADDR_FMT
-                         "\t" PCIADDR_FMT,
-                         &bus,&devfn,&offset[0],&offset[1],&offset[2],&offset[3],
-                         &offset[4],&offset[5],&offset[6], &size[0], &size[1], &size[2],
-		         &size[3], &size[4], &size[5], &size[6]);
-            if (num != 16) {  /* apparantly not 2.3 style */
-                fclose(file);
-                return 0;
-            }
+    if (!xf86OSLinuxPCIDevs) {
+        xf86OSLinuxPCIDevs = xf86OSLinuxGetPciDevs();
+    }
+    if (!xf86OSLinuxPCIDevs) {
+        return FALSE;
+    }
 
-            dev = devfn >> 3;
-            fn = devfn & 0x7;
-            if (tag == pciTag(bus,dev,fn)) {
-                /* ok now look through all the BAR values of this device */
-		pciConfigPtr pDev = xf86GetPciConfigFromTag(tag);
-
-                for (ndx=0; ndx<7; ndx++) {
-                    unsigned long savePtr, flagMask;
-		    if (ndx == 6) 
-			savePtr = pDev->pci_baserom;
-		    else /* this the ROM bar */
-			savePtr = (&pDev->pci_base0)[ndx];
-                    /* Ignore unset base addresses. The kernel may
-                     * have reported non-zero size and address even
-                     * if they are disabled (e.g. disabled ROM BAR).
-                     */
-                    if (savePtr == 0)
-                        continue;
-                    /* Remove memory attribute bits, different for IO
-                     * and memory ranges. */
-                    flagMask = (savePtr & 0x1) ? ~0x3UL : ~0xFUL;
-                    savePtr &= flagMask;
-
-                    /* find the index of the incoming base */
-                    if (base >= savePtr && base < (savePtr + size[ndx])) {
-                        fclose(file);
-                        return (offset[ndx] & flagMask) + (base - savePtr);
-                    }
+    for (device = xf86OSLinuxPCIDevs; device; device = device->next) {
+        dev = device->devfn >> 3;
+        fn = device->devfn & 0x7;
+        if (tag == pciTag(device->bus, dev, fn)) {
+            /* ok now look through all the BAR values of this device */
+            pciConfigPtr pDev = xf86GetPciConfigFromTag(tag);
+
+            for (ndx=0; ndx<7; ndx++) {
+                unsigned long savePtr, flagMask;
+                if (ndx == 6) 
+                    savePtr = pDev->pci_baserom;
+                else /* this the ROM bar */
+                    savePtr = (&pDev->pci_base0)[ndx];
+                /* Ignore unset base addresses. The kernel may
+                 * have reported non-zero size and address even
+                 * if they are disabled (e.g. disabled ROM BAR).
+                 */
+                if (savePtr == 0)
+                    continue;
+                /* Remove memory attribute bits, different for IO
+                 * and memory ranges. */
+                flagMask = (savePtr & 0x1) ? ~0x3UL : ~0xFUL;
+                savePtr &= flagMask;
+
+                /* find the index of the incoming base */
+                if (base >= savePtr && base < (savePtr + device->size[ndx])) {
+                    return (device->offset[ndx] & flagMask) + (base - savePtr);
                 }
             }
         }
-    } while (res);
+    };
 
-    fclose(file);
     return 0;
-
 }


Index: xorg-x11-server.spec
===================================================================
RCS file: /cvs/dist/rpms/xorg-x11-server/devel/xorg-x11-server.spec,v
retrieving revision 1.85
retrieving revision 1.86
diff -u -r1.85 -r1.86
--- xorg-x11-server.spec	16 Jun 2006 19:36:32 -0000	1.85
+++ xorg-x11-server.spec	19 Jun 2006 19:07:15 -0000	1.86
@@ -22,15 +22,22 @@
 Patch6:    xserver-1.0.1-randr-sdk.patch
 Patch7:	   xorg-x11-server-1.1.0-ppc64-build-fix.patch
 
-Patch50: xorg-x11-server-1.0.1-fpic-libxf86config.patch
 
 # Spiffiffity feature/optimization patches.
 Patch100:  xorg-server-1.0.99.2-spiffiffity.patch
 Patch101:  xorg-x11-server-1.1.0-gl-include-inferiors.patch
 
+# Red Hat specific tweaking, not intended for upstream
+# XXX move these to the end of the list
 Patch1000:  xorg-redhat-die-ugly-pattern-die-die-die.patch
 Patch1001:  xorg-x11-server-1.0.1-Red-Hat-extramodes.patch
 Patch1002:  xorg-x11-server-1.1.0-redhat-xephyr-only-hack.patch
+Patch1003:  xorg-x11-server-1.0.1-fpic-libxf86config.patch
+
+# Backports of post-1.1 stuff.
+Patch2000:  xorg-x11-server-1.1.0-cw-crash-fix.patch
+Patch2001:  xorg-x11-server-1.1.0-pci-scan-fixes.patch
+Patch2002:  xorg-x11-server-1.1.0-hush-crash-message.patch
 
 # autoconfiguration feature patches
 #Patch3000:  xorg-x11-server-1.1.0-input-autoconfig-2.patch
@@ -40,6 +47,7 @@
 Patch3004:  xorg-x11-server-1.1.0-no-autoconfig-targetrefresh.patch
 Patch3005:  xorg-x11-server-1.1.0-pci-driver-detection.patch
 Patch3006:  xorg-x11-server-1.1.0-fix-default-mouse-device.patch
+Patch3007:  xorg-x11-server-1.1.0-edid-mode-injection-3.patch
 
 %define moduledir	%{_libdir}/xorg/modules
 %define drimoduledir	%{_libdir}/dri
@@ -280,7 +288,6 @@
 %patch3 -p0 -b .parser-add-missing-headers-to-sdk
 %patch6 -p1 -b .randrsdk
 %patch7 -p1 -b .ppc64
-%patch50 -p1 -b .fpic
 
 %patch100 -p0 -b .spiffiffity
 %patch101 -p0 -b .gl-include-inferiors
@@ -288,8 +295,11 @@
 %patch1000 -p0 -b .redhat-die-ugly-pattern-die-die-die
 %patch1001 -p1 -b .Red-Hat-extramodes
 %patch1002 -p1 -b .xephyr
+%patch1003 -p1 -b .fpic
 
-#%patch2000 -p1 -b .autoconfig
+%patch2000 -p1 -b .cw-crash
+%patch2001 -p1 -b .pci-scan
+%patch2002 -p1 -b .crash-message
 
 %patch3001 -p1 -b .edid1
 %patch3002 -p1 -b .cvt
@@ -297,6 +307,7 @@
 %patch3004 -p1 -b .targetrefresh
 %patch3005 -p1 -b .pci-loader
 %patch3006 -p1 -b .mice
+%patch3007 -p1 -b .edid3
 
 %build
 #FONTDIR="${datadir}/X11/fonts"
@@ -590,6 +601,12 @@
 # -------------------------------------------------------------------
 
 %changelog
+* Mon Jun 19 2006 Adam Jackson <ajackson at redhat.com> 1.1.0-17
+- Disable filling in monitor gamma info from EDID momentarily, since drivers
+  will use that field to set the card's gamma ramp.
+- Backport some stuff from git: cw crash fix, faster pci scanning, and a
+  log message cleanup.
+
 * Fri Jun 16 2006 Mike A. Harris <mharris at redhat.com> 1.1.0-16
 - Enable spec support for s390, s390x, alpha, sparc, and sparc64 architectures.
 - Add with_hw_servers conditional to disable hardware servers on s390/s390x.




More information about the fedora-cvs-commits mailing list