Hello community, here is the log from the commit of package xorg-x11-server checked in at Mon Dec 18 17:55:03 CET 2006. -------- --- xorg-x11-server/xorg-x11-server.changes 2006-12-15 16:49:47.000000000 +0100 +++ /mounts/work_src_done/STABLE/xorg-x11-server/xorg-x11-server.changes 2006-12-18 17:08:58.000000000 +0100 @@ -1,0 +2,5 @@ +Mon Dec 18 17:08:00 CET 2006 - schwab@suse.de + +- Fix off-by-one in pci multi-domain support [#229278]. + +------------------------------------------------------------------- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ xorg-x11-server.spec ++++++ --- /var/tmp/diff_new_pack.69jKAL/_old 2006-12-18 17:54:55.000000000 +0100 +++ /var/tmp/diff_new_pack.69jKAL/_new 2006-12-18 17:54:55.000000000 +0100 @@ -17,7 +17,7 @@ URL: http://xorg.freedesktop.org/ %define EXPERIMENTAL 0 Version: 7.2 -Release: 31 +Release: 32 License: X11/MIT BuildRoot: %{_tmppath}/%{name}-%{version}-build Group: System/X11/Servers/XF86_4 @@ -444,6 +444,8 @@ %endif %changelog -n xorg-x11-server +* Mon Dec 18 2006 - schwab@suse.de +- Fix off-by-one in pci multi-domain support [#229278]. * Wed Dec 13 2006 - sndirsch@suse.de - libdrm.diff: * no longer fail when some driver tries to load "drm" module ++++++ p_pci-off-by-one.diff ++++++ --- /var/tmp/diff_new_pack.69jKAL/_old 2006-12-18 17:54:56.000000000 +0100 +++ /var/tmp/diff_new_pack.69jKAL/_new 2006-12-18 17:54:56.000000000 +0100 @@ -1,11 +1,89 @@ ---- hw/xfree86/os-support/bus/linuxPci.c.orig 2006-11-20 22:04:35.000000000 +0100 -+++ hw/xfree86/os-support/bus/linuxPci.c 2006-11-20 22:06:08.000000000 +0100 -@@ -547,7 +547,7 @@ - pPCI = xf86GetPciHostConfigFromTag(Tag); - - if (pPCI && (result = PCI_DOM_FROM_BUS(pPCI->busnum))) -- return result; -+ return result + 1; +--- hw/xfree86/os-support/bus/linuxPci.c ++++ hw/xfree86/os-support/bus/linuxPci.c +@@ -550,15 +550,15 @@ + return result; if (!pPCI || pPCI->fakeDevice) - return 1; /* Domain 0 is reserved */ +- return 1; /* Domain 0 is reserved */ ++ return 0; + + if ((fd = linuxPciOpenFile(pPCI ? pPCI->tag : 0,FALSE)) < 0) +- return 0; ++ return -1; + + if ((result = ioctl(fd, PCIIOC_CONTROLLER, 0)) < 0) +- return 0; ++ return -1; + +- return result + 1; /* Domain 0 is reserved */ ++ return result; + } + + static pointer +@@ -628,7 +628,7 @@ + return NULL; + } + +-#define MAX_DOMAINS 257 ++#define MAX_DOMAINS 256 + static pointer DomainMmappedIO[MAX_DOMAINS]; + + static int +@@ -649,11 +649,10 @@ + domain = xf86GetPciDomain(Tag); + bus = PCI_BUS_NO_DOMAIN(PCI_BUS_FROM_TAG(Tag)); + +- /* Domain 0 is reserved -- see xf86GetPciDomain() */ +- if ((domain <= 0) || (domain >= MAX_DOMAINS)) ++ if ((domain < 0) || (domain >= MAX_DOMAINS)) + FatalError("linuxOpenLegacy(): domain out of range\n"); + +- sprintf(path, PREFIX, domain - 1, bus, name); ++ sprintf(path, PREFIX, domain, bus, name); + fd = open(path, O_RDWR); + if (fd >= 0) { + xfree(path); +@@ -685,7 +684,6 @@ + xf86MapDomainMemory(int ScreenNum, int Flags, PCITAG Tag, + ADDRESS Base, unsigned long Size) + { +- int domain = xf86GetPciDomain(Tag); + int fd; + pointer addr; + +@@ -733,7 +731,7 @@ + int domain = xf86GetPciDomain(Tag); + int fd; + +- if ((domain <= 0) || (domain >= MAX_DOMAINS)) ++ if ((domain < 0) || (domain >= MAX_DOMAINS)) + FatalError("xf86MapDomainIO(): domain out of range\n"); + + if (DomainMmappedIO[domain]) +@@ -847,7 +845,7 @@ + RANGE_TYPE(ResExcIoBlock, domain)); + pRes = xf86AddResToList(pRes, &range, -1); + +- if (domain <= 0) ++ if (domain < 0) + break; + } + } +@@ -881,7 +879,7 @@ + RANGE_TYPE(ResExcIoBlock, domain)); + pRes = xf86AddResToList(pRes, &range, -1); + +- if (domain <= 0) ++ if (domain < 0) + break; + } + } +@@ -933,7 +931,7 @@ + RANGE_TYPE(ResExcIoBlock, domain)); + pRes = xf86AddResToList(pRes, &range, -1); + +- if (domain <= 0) ++ if (domain < 0) + break; + } + } ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun... --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org