Package: xserver-xfree86 Version: 4.3.0.dfsg.1-8 Severity: important Tags: patch
I cannot start X since I downgraded (from 64bit kernel) to i386 PAE enabled 2.6.9 kernel, as XFree86 binary available in Debian is not compatible with no-exec changes. They die with sigsegv when trying to initialize first extension they load. Please apply patch below or (better) switch to Xorg or fix problem in some other way. Actually whole elfloader.c needs some serious cleanup on #ifdefs - archs without mprotect should provide empty one instead of scattering #ifdefs (each checking for different set of architectures!) through the code. Thanks, Petr Vandrovec --- /usr/src/debian/xfree86-4.3.0.dfsg.1/build-tree/xc/programs/Xserver/hw/xfree86/loader/elfloader.c.orig 2004-09-24 09:57:59.000000000 +0200 +++ /usr/src/debian/xfree86-4.3.0.dfsg.1/build-tree/xc/programs/Xserver/hw/xfree86/loader/elfloader.c 2004-10-21 21:55:21.000000000 +0200 @@ -2740,12 +2740,10 @@ elffile->lsection[j].size=SecSize(i); elffile->lsection[j].flags=flags; switch (SecType(i)) { -#ifdef __OpenBSD__ case SHT_PROGBITS: mprotect(elffile->lsection[j].saddr, SecSize(i), PROT_READ|PROT_WRITE|PROT_EXEC); break; -#endif case SHT_SYMTAB: elffile->symtab = (Elf_Sym *)elffile->saddr[i]; elffile->symndx = i;