diff --git a/pci-legacy-mem-fallback.diff b/pci-legacy-mem-fallback.diff new file mode 100644 index 0000000..a56cbcc --- /dev/null +++ b/pci-legacy-mem-fallback.diff @@ -0,0 +1,19 @@ +--- hw/xfree86/os-support/bus/linuxPci.c ++++ hw/xfree86/os-support/bus/linuxPci.c +@@ -493,6 +493,7 @@ xf86MapDomainMemory(int ScreenNum, int F + * legacy_mem interface is unavailable. + */ + if ((Base > 1024*1024) || ((fd = linuxOpenLegacy(dev, "legacy_mem")) < 0)) ++ fallback: + return linuxMapPci(ScreenNum, Flags, dev, Base, Size, + PCIIOC_MMAP_IS_MEM); + else +@@ -501,6 +502,8 @@ xf86MapDomainMemory(int ScreenNum, int F + if (fd >= 0) + close(fd); + if (addr == NULL || addr == MAP_FAILED) { ++ if (errno == ENXIO) ++ goto fallback; + perror("mmap failure"); + FatalError("xf86MapDomainMem(): mmap() failure\n"); + } diff --git a/xorg-x11-server.changes b/xorg-x11-server.changes index 01f20ed..e8869d8 100644 --- a/xorg-x11-server.changes +++ b/xorg-x11-server.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Sat Jan 31 15:21:21 CET 2009 - schwab@suse.de + +- Provide proper fallback when legacy_mem is not available. + ------------------------------------------------------------------- Thu Jan 29 16:55:26 CET 2009 - sndirsch@suse.de diff --git a/xorg-x11-server.spec b/xorg-x11-server.spec index fde1ff1..937d349 100644 --- a/xorg-x11-server.spec +++ b/xorg-x11-server.spec @@ -29,7 +29,7 @@ BuildRequires: libjpeg-devel Url: http://xorg.freedesktop.org/ %define EXPERIMENTAL 0 Version: 7.4 -Release: 22 +Release: 24 License: X11/MIT BuildRoot: %{_tmppath}/%{name}-%{version}-build Group: System/X11/Servers/XF86_4 @@ -112,6 +112,7 @@ Patch124: commit-59f9fb4b8.diff Patch125: 0001-Xinput-Catch-missing-configlayout-when-deleting-dev.patch Patch126: commit-a9e2030.diff Patch127: dpms_screensaver.diff +Patch128: pci-legacy-mem-fallback.diff %description This package contains the X.Org Server. @@ -233,6 +234,7 @@ popd %patch125 -p1 %patch126 -p1 %patch127 -p1 +%patch128 %build pushd xorg-docs-* @@ -564,6 +566,8 @@ exit 0 %endif %changelog +* Sat Jan 31 2009 schwab@suse.de +- Provide proper fallback when legacy_mem is not available. * Thu Jan 29 2009 sndirsch@suse.de - reenabled Security extension (bnc #470601) * Fri Jan 16 2009 sndirsch@suse.de