Recent Changes to XFree86

Below is a recent extract from the XFree86 change log. The full change log can be found in the XFree86 source tree (xc/programs/Xserver/hw/xfree86/CHANGELOG) and at our CVSWeb server.

XFree86 development code can be accessed directly from the CVS repository. Information about this can be found on our CVS page.

Change log extracts are also available for the following branches: 3.3, 4.0.2, 4.1, 4.2, 4.3, 4.4, 4.5.

XFree86 4.8.99.1 (?? February 2009)
   7. Deal with a build issue introduced by "security" update 2007-004 to
      MacOSX.  This update, present in MacOSX 10.5, by default disables the use
      of the DYLD_LIBRARY_PATH environment variable that supplemented the
      run-time library search path.  To overcome this, change the build to link
      bdftopcf, fc-cache, mkfontdir, mkfontscale, xcursorgen and xkbcomp
      utilities against static versions of the libraries generated by the
      build.  Although this is currently only done for Darwin 9 and later, this
      is written in such a way that this can be done on any other platform
      should the need arise  (Marc La France).
   6. Fix links against libGL that arises on MacOSX Jaguar due to its confusion
      over whether to use the build-generated library or a system-provided one
      (Marc La France).
   5. Various header-related build fixes for MacOSX 10.5 (Jaguar).  It is at
      time unknown whether or not these negatively impact the build on older
      versions of Darwin  (Marc La France).
   4. Enable HasLibPthread for FreeBSD 7 and later because libc_r is no
      longer present, and was deprecated since some earlier release (6.x?)
      (David Dawes).
   3. Disable optimisation when building the scanpci/pcidata modules which
      contain a large amount of statically initialised data.  Optimisation
      is disabled because it provokes an internal compiler error on FreeBSD
      7.0 (David Dawes).
   2. Update Xinstall.sh version for 4.8.0, and recognise some newer platforms
      and their bindists (David Dawes).
   1. Elf has been the only supported format on FreeBSD for a long time.
      The objformat utility has been deprecated for a long time, and was
      finally removed in FreeBSD 7.  Don't call it from imake for FreeBSD
      5.x and later (David Dawes).

XFree86 4.8.0 (15 December 2008)
  70. 4.8.0 release.

XFree86 4.7.99.31 (9 December 2008)
  69. Fix error path in -configure processing.  (Matthieu Herrb)

XFree86 4.7.99.30 (23 November 2008)

XFree86 4.7.99.29 (9 November 2008)
  68. Move CloseWellKnownConnections() calls into OsCleanup(TRUE) calls.
      Catches yet another server exit case where sockets were not being closed
      (Marc La France).

XFree86 4.7.99.28 (23 October 2008)
  67. When using BSD authentication in xdm, wipe out the password as soon as
      possible to prevent it from showing up in the address space of
      subsequently forked child processes (Matthieu Herrb).
  66. Ensure XVidModeGetMonitor() always returns dynamically allocated data, as
      documented in its man page (Marc La France).
  65. Fix potential crash in DBE (Dave Arlie).
  64. Import X.Org fixes for CVE-2008-1377, CVE-2008-1379, CVE-2008-2360 and
      CVE-2008-2361 security advisories.
  63. Various x86emu changes:
      - Fix various halfword overflow issues (Scitech).
      - Add RDTSC emulation (Aaron Plattner).
      - Fix JNL emulation (David Wong).
      - Add emulation of CPUID, levels 0 & 1.  If the host architecture
        supports CPUID, pass that implementation's results to the emulation.
        If running on a 386 or 486 that does not support CPUID, provide a
        reasonable simulation (instead of SIGILL'ing).  On all other host
        architectures, the emulator will report itself as a 486DX4
        (Marc La France).
      - Add BTS emulation (Felix Kuehling).
      - Fix BSF & BSR emulations (Aaron Plattner).
      - Fix MUL and IMUL emulations in the 64-bit case (Matthias Hopf).
  62. xf86sym.c build fix when RandR is disabled (Pat Kane, Bugzilla #1693).
  61. Spruce up implementation of pthread_key_create(), pthread_key_delete()
      pthread_getspecific() and pthread_setspecific() stubs in libXThrStub
      library.  Inspired by a change found in OpenBSD repository
      (Marc La France).
  60. When opening display, if LOCALCONN fails, fall back to UNIXCOMM, then
      TCPCONN (Alex Chen).
  59. Improve uniqueness of XDM-AUTHORIZATION-1 cookies.  (Egbert Eich).
  58. Fix possible segfault when using XDM-AUTHORIZATION-1 keys for remote
      clients over IPv6.  (Christian Weisgerber)

XFree86 4.7.99.27 (9 October 2008)

XFree86 4.7.99.26 (23 September 2008)

XFree86 4.7.99.25 (9 September 2008)

XFree86 4.7.99.24 (23 August 2008)

XFree86 4.7.99.23 (9 August 2008)

XFree86 4.7.99.22 (23 July 2008)
  57. Immunise VBESetGetPalletteData() against attempts to set null pallette
      data.  (Dick Wesseling, Bugzilla #1691).

XFree86 4.7.99.21 (9 July 2008)
  56. Allow 32-bit PCI I/O addresses on Linux/PowerPC (Marc La France).
  55. A less kludgy implementation of the Simba hack introduced in CHANGELOG
      #39  (Marc La France).

XFree86 4.7.99.20 (23 June 2008)
  54. Fix possible reference to freed memory in HP ZX1 PCI chipset scan and
      emulate configuration space more closely for its fake bridges
      (Marc La France).
  53. Fix bug that caused the PCI scan to ignore bus segments that are known to
      exist before the scan starts  (Marc La France).

XFree86 4.7.99.19 (9 June 2008)

XFree86 4.7.99.18 (23 May 2008)
  52. Fix radeon driver to not relocate the framebuffer within its aperture on
      non-DRI platforms.  Fixes a SunOS/sparc panic upon /dev/console (or
      /dev/wscons) output while the server is running.  (Marc La France).
  51. Change atimisc to not disable the MMIO area at the tail end of the linear
      aperture if it is found to be enabled on entry.  Fixes a hang on
      Solaris/sparc upon /dev/console or /dev/wscons output while the server is
      running (Marc La France).
  50. Change the aperture driver for Solaris to mark its mappings as non-
      cacheable and as having sideeffects  (Marc La France).
  49. Avoid unpredictable behaviour on PCI-X and/or PCI Express capable ix86,
      x86_64 and PowerPC systems  (Marc La France).

XFree86 4.7.99.17 (9 May 2008)
  48. Fix ATIPreInit() glitch that caused it to ignore the possibility that the
      common layer had relocated a Mach64's PCI block I/O base
      (Marc La France).
  47. Disable Mach64 hardware cursors when the unaccelerated VGA CRTC is used
      to produce server-generated video modes (Marc La France).
  46. Fix Mach64 video memory burst transfers on x86_64 (Marc La France).
  45. Remove two unused functions from xf4bpp (Miod Vallat, Marc La France).
  44. Fix additional incorrect assumptions regarding unassigned PCI resources
      (Marc La France).
  43. Mitigate brokenness in /dev/console redirection on Solaris.  Should this
      redirection fail, redirect the server's stderr to the log to avoid screen
      corruption due to the server's own console output.  (Marc La France).
  42. Add a few more Radeon PCI IDs (prompted by Loic Mahe).  Also, remove the
      tracking of these from the "ati" module.  (Marc La France)
  41. On SunOS, add a command line flag to disable the server's /dev/console
      redirection  (Marc La France).
  40. Rework the handling of unassigned PCI resources in the server to ensure
      they are reassigned while the server is running and restore them to their
      unassigned state on server exit  (Marc La France).
  39. Change the scanpci and pcitweak utilities to simulate a completed master
      abort instead of reading PCI register 0xb8 of Sun's Simba PCI-to-PCI
      bridges, as reads of this register cause a PCI interrupt acknowledge
      cycle on the secondary bus for an interrupt that did not actually occur.
      Note that no other code touches this register.  (Marc La France).
  38. Avoid screen corruption that occurs upon /dev/console output while the
      X server is running on SunOS, by redirecting this output into a file.
      The file is copied back to /dev/console on server exit.  Note that screen
      corruption still occurs on output to /dev/wscons because wscons cannot be
      redirected in this fashion.  (Marc La France).

XFree86 4.7.99.16 (23 April 2008)

XFree86 4.7.99.15 (9 April 2008)
  37. Radeon driver changes:
      - Merge in various changes from X.Org, via OpenBSD's xenocara repository.
        Among other things, this adds support for newer Radeon's.
      - Don't use vgaHW if the video mode on server entry is found to be an
        accelerator (i.e. non-VGA) video mode (Marc La France).
      - Avoid hard-failed master aborts while attempting to read video BIOS
        (Marc La France).
  36. Rage 128 driver changes:
      - Add support for dual head on Rage 128 Mobility's (X.Org, via OpenBSD's
        xenocara repository).
      - Don't use vgaHW if the video mode on server entry is found to be an
        accelerator (i.e. non-VGA) video mode (Marc La France).
      - Avoid hard-failed master aborts while attempting to read video BIOS
        (Marc La France).
  35. Fix PCI resource relocation to avoid nullifying resources
      (Marc La France).
  34. In int10, do not attempt to populate shadow system BIOS segments if
      there's a risk of hard-failed master aborts (Marc La France).
  33. Zero out all SPARC SunOS framebuffers on server exit (Marc La France).
  32. Temporarily ignore 64-bit PCI memory address spaces on SPARC
      (Marc La France).
  31. For fault isolation purposes, on SPARC, bracket all PCI configuration
      space accesses with MEMBAR's  (Marc La France).
  30.5.  Change PCI scan to mitigate the effects of PCI Express Unsupported 
      requests (its idea of PCI's master aborts).  On Solaris/SPARC at least,
      this tones down a system freeze to a SIGKILL of the PCI scan.
      (Marc La France).
  30. Add PCI-X and PCI Express to the mix of PCI variants that are supported
      in a single system.  Includes, but is not limited to, support for Sun's
      Ultra 25 and Ultra 45 systems.  (Marc La France).
  29. Remove assumption that all PCI entities have a function 0
      (Marc La France).
  28. Update to 2008-03-26 pci.ids snapshot.  Also add some more recent PCI
      Radeon IDs.  (Marc La France)
  27. Fix integer wrap-arounds in XAA's wide line code path (Paul Mackerras).
  26. Fix XAA segfault when dealing with certain TE fonts with null glyphs
      (Soran Sandmann Pedersen).
  25. Make some of ATIProbe()'s verbose messages less misleading
      (Marc La France).
  24. Fix reversed memset() arguments in atimisc LUT handling (David Krause).
  23. In favour of the majority case, assume x86 and x86_64 systems cannot
      hard-fail master aborts.  On an experimental basis, also assume the same
      of alpha systems.  This adds support for such systems that don't include
      a PCI-to-ISA bridge.  (Marc La France)

XFree86 4.7.99.14 (23 March 2008)
  22. Fix null pointer defereference in XKB when LEDs don't exist
      (Peter Hutterer, via X.Org bug #13961).
  21. Adapt from X.Org fixes for the CVE-2007-5760, CVE-2007-5958,
      CVE-2007-6427, CVE-2007-6428, CVE-2007-6429 and CVE-2008-0006 security
      advisories.
  20. Remove unnecessary #include of  from our Linux DRM
      source  (Bugzilla #1689, Marc La France).
  19. When building an XFree86 loader server with stack backtrace support, use
      GCC's -fno-omit-frame-pointer flag to improve the accuracy of stack
      traces (Marc La France).
  18. Fix (portably this time) X server links to ensure dependant subdirs are
      tranversed before the server linked  (Marc La France).

XFree86 4.7.99.13 (9 March 2008)

XFree86 4.7.99.12 (23 February 2008)

XFree86 4.7.99.11 (9 February 2008)

XFree86 4.7.99.10 (23 January 2008)

XFree86 4.7.99.9 (9 January 2008)
  17. Update SHAPE extension to Keith Packard's 1.1 version.  Adds input
      regions to windows that scope the area within which pointer movements are
      reported to the client.  Fixes build issue in certain sawfish window
      manager versions.  Also bump libXext shared library minor version.
      Problem reported by John Lumby.
  16. Fix file descriptor leaks in Xprt, and various attempts to close streams
      that were not opened successfully (Marc La France).

XFree86 4.7.99.8 (23 December 2007)

XFree86 4.7.99.7 (9 December 2007)

XFree86 4.7.99.6 (23 November 2007)

XFree86 4.7.99.5 (9 November 2007)
  15. Do not free all Mesa buffers upon GLX extension closedown.  Instead these
      will be freed later, when FreeAllResources() is called to also free the
      drawable privates that reference these buffers.  Fixes Bugzilla #1685
      (Marc La France).
  14. Fix Mesa to complain (on stderr), rather than segfault, when an attempt
      is made to free an unknown buffer (Marc La France).
  13. Fix initialisation of __GLXscreenInfo structures (Marc La France).
  12. Fix memory leak and code formatting in RADEONProbe() function
      (Marc La France).

XFree86 4.7.99.4 (23 October 2007)

XFree86 4.7.99.3 (9 October 2007)
  11. Fix i830 driver bug that occurs when the amount of video memory
      initially reported by the BIOS is zero (Marc La France).
  10. Fix byte-swapping issues in libXft's handling of XImages (Alan Brown,
      Bugzilla #1687).
   9. Fix the SDK's header directory structure (Marc La France).

XFree86 4.7.99.2 (23 September 2007)
   8. 64-bit fix in XAAValidateGC()  (Marc La France).
   7. Speed up Mach64 block transfers on AMD64s (Marc La France).
   6. Fix stipples in Xigs and Xsis530 servers (Marc La France).
   5. Fix bug in Xdmx's handling of USB devices (Marc La France).
   4. Darwin build fix, for the case where an X11 implementation has yet to be
      installed (Marc La France, problem reported by Yves de Champlain).
   3. Change `lndir` utility to trim off trailing self-references (i.e. "/" and
      "/." from its "from" argument (Marc La France).
   2. On SVR4 variants (including SunOS & Solaris), use the `make`
      implementation found in $PATH, instead of a hard-wired one
      (Marc La France).
   1. Remove (what's left of) the build's dependencies on the Glide2 and Glide3
      libraries.  What remains are run-time only dependencies in the 2D glide
      driver (Glide2) and the tdfx DRI driver (Glide3)  (Marc La France).

XFree86 4.7.99.1 (9 September 2007)

XFree86 4.7.0 (12 August 2007)
 167. 4.7.0 release.

XFree86 4.6.99.29 (7 August 2007)
 166. Fix #include's in GLw documentation (Marc Balmer).

XFree86 4.6.99.28 (21 July 2007)
 165. Fix new PCI scan for SPARCs based on Sun's Psycho chipset
      (Marc La France).
 164. Default noise reductions during PCI scans on the *BSDs (Marc La France).

XFree86 4.6.99.27 (7 July 2007)
 163. Update locale information for Serbia and Montenegro (Bugzilla #1684,
      Milos Komarcevic).
 162. Beef up validity check on PCI resource sizes returned from the OS
      (Marc La France, problem reported by Loic Mahe).
 161. Add missing install rule for xterm when it is to be installed neither
      setuid nor setgid (Marc La France, problem reported by Loic Mahe).
 160. Fix various issues related to install.sdk targets when
      BuildModuleInSubdir is asserted during a build  (Marc La France,
      problem reported by Loic Mahe).
 159. Fix ioport utility to allow for VGA I/O aliases (Marc La France).

XFree86 4.6.99.26 (21 June 2007)
 158. Improve makedepend's accuracy when -U command line flags and/or #undef
      directives are involved  (Marc La France).
 157. Fix endianness bug in Render extension's SetPictureClipRectangles
      request  (Matthieu Herrb).

XFree86 4.6.99.25 (7 June 2007)
 156. Allow scanpci utility to dump all 4K bytes of a PCI Express device's
      configuration space (Marc La France).
 155. Generalise the scanning of SPARC PROMs for PCI host bridges by relying
      more on PROM information and less on chipset specifics.  In particular,
      this adds support for PCI Express as found in some UltraSPARC IV systems
      (Marc La France).
 154. Back-port a fix for CVE-2007-2754, another integer overflow vulnerability
      in the freetype2 library's TrueType font handling  (Victor Stinner).
 153. Allow DefaultUserPath overrides on Darwin.  Requested by "SciFi"
      (Marc La France).
 152. On Darwin, make xcodebuild and the older pbxbuild use different project
      descriptions (Marc La France).
 151. Change `make install` on Darwin to work around XCode's inability to
      follow symlinks (Marc La France).

XFree86 4.6.99.24 (21 May 2007)
 150. Fix build with an external freetype2 library (both newer and older than
      the version we provide under xc/extras/).  However, still build
      libXfont's FreeType backend module with the freetype2 version we provide
      because it is the only version known to be modified to correctly build
      the module.  Problem reported in Bugzilla #1683 (Jie Luo, Marc La France).

XFree86 4.6.99.23 (7 May 2007)
 149. Fix linking of Darwin executables by ensuring locally built static
      libraries are found before dynamic libraries in system library search
      paths. Problem reported by "SciFi".  (Marc La France)
 148. Remove unnecessary #include in fonttosfnt/util.c that prevents successful
      builds against newer freetype2 versions.  Problem reported by "SciFi".
      (Marc La France)
 147. Fix XDarwin build when BuildGlxInDmx is asserted.  Problem reported by
      "SciFi".  (Marc La France)
 146. Fix libXft1 build against newer fontconfig versions.  Specifically
      exclude support for fontconfig 2.3.95 because it introduces an
      incompatibility without a version bump.  Problem reported by "SciFi".
      (Marc La France)
 145. Darwin build workaround for XCode's inability to follow symlinks.
      Problem reported by "SciFi".  (Marc La France)
 144. Add an implicit rule for Objective-C sources so that XDarwin build don't
      depend on Apple-only GNU make changes.  Problem pointed out by "SciFi".
      (Marc La France)

XFree86 4.6.99.22 (21 April 2007)
 143. Fix double UnlockDisplay() in libGL (Jamey Sharp, freedesktop bug #8521).
 142. Allow 3rd mouse button emulation even if the mouse actually has a 3rd
      button.  This helps laptops, and the like, running systems that combine
      a touchpad and an external mouse into one device (Martin Husemann).
 141. Resave text mode on re-entry into the trident driver (Matthias Drochner).
 140. Add DPMS support to the newport driver (Christopher Sekiya).
 139. Add .gitignore to the list of files the lndir utility ignores by default