xserver: Branch 'master' - 18 commits

Adam Jackson ajax at kemper.freedesktop.org
Wed Feb 13 13:54:44 PST 2008


 Xext/panoramiX.c                           |   10 ++---
 Xext/xf86bigfont.c                         |    8 ++--
 configure.ac                               |    2 -
 dix/dispatch.c                             |   12 +++---
 dix/dixfonts.c                             |    8 ++--
 dix/dixutils.c                             |   21 +++-------
 dix/globals.c                              |    2 +
 dix/resource.c                             |    5 --
 dix/window.c                               |    2 -
 hw/dmx/examples/ev.c                       |    2 -
 hw/kdrive/linux/linux.c                    |    2 -
 hw/kdrive/src/kmap.c                       |    8 ++--
 hw/kdrive/vesa/vm86.c                      |    2 -
 hw/vfb/InitOutput.c                        |   18 ++++-----
 hw/xfree86/common/xf86.h                   |    4 +-
 hw/xfree86/common/xf86Config.c             |    5 --
 hw/xfree86/common/xf86Globals.c            |    3 -
 hw/xfree86/common/xf86Helper.c             |   25 +-----------
 hw/xfree86/common/xf86Init.c               |   57 -----------------------------
 hw/xfree86/common/xf86Priv.h               |    3 -
 hw/xfree86/common/xf86Privstr.h            |    1 
 hw/xfree86/common/xf86str.h                |    2 -
 hw/xfree86/doc/man/xorg.conf.man.pre       |   11 -----
 hw/xfree86/exa/examodule.c                 |   26 -------------
 hw/xfree86/loader/dlloader.c               |   43 ++++++++-------------
 hw/xfree86/loader/loaderProcs.h            |    6 ---
 hw/xfree86/loader/loadmod.c                |   21 ----------
 hw/xfree86/loader/xf86sym.c                |    2 -
 hw/xfree86/os-support/bsd/bsd_apm.c        |    2 -
 hw/xfree86/os-support/bsd/bsd_kqueue_apm.c |    2 -
 hw/xfree86/os-support/solaris/sun_apm.c    |    6 +--
 hw/xfree86/parser/xf86tokens.h             |    1 
 hw/xfree86/xaa/xaaInitAccel.c              |   26 -------------
 hw/xnest/Font.c                            |    2 +
 hw/xprint/ps/psout_ftpstype1.c             |    2 -
 hw/xquartz/darwinKeyboard.c                |   12 +++---
 include/dix.h                              |   21 +---------
 include/dixstruct.h                        |    1 
 include/misc.h                             |    3 -
 include/site.h                             |    2 -
 os/WaitFor.c                               |    8 ++--
 os/utils.c                                 |   26 -------------
 42 files changed, 88 insertions(+), 337 deletions(-)

New commits:
commit ba69904148acf755bec8fbda2eb869144f0ef7d4
Author: Adam Jackson <ajax at redhat.com>
Date:   Sun Feb 3 22:49:23 2008 +1100

    Simplify dlloader a bit more.

diff --git a/hw/xfree86/loader/dlloader.c b/hw/xfree86/loader/dlloader.c
index 2afdef7..4caefd0 100644
--- a/hw/xfree86/loader/dlloader.c
+++ b/hw/xfree86/loader/dlloader.c
@@ -71,15 +71,9 @@
 #define DLSYM_PREFIX ""
 #endif
 
-typedef struct {
-    int handle;
-    void *dlhandle;
-    int flags;
-} DLModuleRec, *DLModulePtr;
-
 /* Hooray, yet another open coded linked list! FIXME */
 typedef struct DLModuleList {
-    DLModulePtr module;
+    void *module;
     struct DLModuleList *next;
 } DLModuleList;
 
@@ -88,19 +82,22 @@ static DLModuleList *dlModuleList = NULL;
 static void *
 DLFindSymbolLocal(pointer module, const char *name)
 {
-    DLModulePtr dlfile = module;
     void *p;
     char *n;
 
     static const char symPrefix[] = DLSYM_PREFIX;
 
-    n = malloc(strlen(symPrefix) + strlen(name) + 1);
-    if (strlen(symPrefix))
+    if (strlen(symPrefix)) {
+	n = malloc(strlen(symPrefix) + strlen(name) + 1);
 	sprintf(n, "%s%s", symPrefix, name);
-    else
-	sprintf(n, "%s", name);
-    p = dlsym(dlfile->dlhandle, n);
-    free(n);
+    } else {
+	n = name;
+    }
+
+    p = dlsym(module, n);
+
+    if (strlen(symPrefix))
+	free(n);
 
     return p;
 }
@@ -127,7 +124,7 @@ DLFindSymbol(const char *name)
 	global_scope = dlopen(NULL, DLOPEN_LAZY | DLOPEN_GLOBAL);
 
     if (global_scope)
-	return dlsym(global_scope, name);
+	return DLFindSymbolLocal(global_scope, name);
 
     return NULL;
 }
@@ -135,23 +132,17 @@ DLFindSymbol(const char *name)
 void *
 DLLoadModule(loaderPtr modrec, int flags)
 {
-    DLModulePtr dlfile;
+    void * dlfile;
     DLModuleList *l;
     int dlopen_flags;
 
-    if ((dlfile = calloc(1, sizeof(DLModuleRec))) == NULL) {
-	ErrorF("Unable to allocate DLModuleRec\n");
-	return NULL;
-    }
-    dlfile->handle = modrec->handle;
     if (flags & LD_FLAG_GLOBAL)
 	dlopen_flags = DLOPEN_LAZY | DLOPEN_GLOBAL;
     else
 	dlopen_flags = DLOPEN_LAZY;
-    dlfile->dlhandle = dlopen(modrec->name, dlopen_flags);
-    if (dlfile->dlhandle == NULL) {
+    dlfile = dlopen(modrec->name, dlopen_flags);
+    if (dlfile == NULL) {
 	ErrorF("dlopen: %s\n", dlerror());
-	free(dlfile);
 	return NULL;
     }
 
@@ -166,7 +157,6 @@ DLLoadModule(loaderPtr modrec, int flags)
 void
 DLUnloadModule(void *modptr)
 {
-    DLModulePtr dlfile = (DLModulePtr) modptr;
     DLModuleList *l, *p;
 
     /* remove it from dlModuleList. */
@@ -185,6 +175,5 @@ DLUnloadModule(void *modptr)
 	    p = l;
 	}
     }
-    dlclose(dlfile->dlhandle);
-    free(modptr);
+    dlclose(modptr);
 }
commit f750ce53ac450824d0c792d11eafdf311cf8abc0
Author: Adam Jackson <ajax at redhat.com>
Date:   Fri Feb 1 17:33:48 2008 +1100

    Remove some braindamage from ModuleDesc.
    
    Yay dead code elimination.

diff --git a/hw/xfree86/common/xf86Helper.c b/hw/xfree86/common/xf86Helper.c
index 8978f82..1368d04 100644
--- a/hw/xfree86/common/xf86Helper.c
+++ b/hw/xfree86/common/xf86Helper.c
@@ -1,4 +1,3 @@
-
 /*
  * Copyright (c) 1997-2003 by The XFree86 Project, Inc.
  *
diff --git a/hw/xfree86/loader/loaderProcs.h b/hw/xfree86/loader/loaderProcs.h
index b71ad45..9c73db3 100644
--- a/hw/xfree86/loader/loaderProcs.h
+++ b/hw/xfree86/loader/loaderProcs.h
@@ -62,17 +62,11 @@ typedef struct module_desc {
     struct module_desc *child;
     struct module_desc *sib;
     struct module_desc *parent;
-    struct module_desc *demand_next;
     char *name;
-    char *filename;
-    char *identifier;
-    XID client_id;
-    int in_use;
     int handle;
     ModuleSetupProc SetupProc;
     ModuleTearDownProc TearDownProc;
     void *TearDownData;		/* returned from SetupProc */
-    const char *path;
     const XF86ModuleVersionInfo *VersionInfo;
 } ModuleDesc, *ModuleDescPtr;
 
diff --git a/hw/xfree86/loader/loadmod.c b/hw/xfree86/loader/loadmod.c
index 45e9cb3..650dcf3 100644
--- a/hw/xfree86/loader/loadmod.c
+++ b/hw/xfree86/loader/loadmod.c
@@ -786,12 +786,7 @@ NewModuleDesc(const char *name)
 	mdp->child = NULL;
 	mdp->sib = NULL;
 	mdp->parent = NULL;
-	mdp->demand_next = NULL;
 	mdp->name = xstrdup(name);
-	mdp->filename = NULL;
-	mdp->identifier = NULL;
-	mdp->client_id = 0;
-	mdp->in_use = 0;
 	mdp->handle = -1;
 	mdp->SetupProc = NULL;
 	mdp->TearDownProc = NULL;
@@ -816,15 +811,10 @@ DuplicateModule(ModuleDescPtr mod, ModuleDescPtr parent)
     if (LoaderHandleOpen(mod->handle) == -1)
 	return NULL;
 
-    ret->filename = xstrdup(mod->filename);
-    ret->identifier = mod->identifier;
-    ret->client_id = mod->client_id;
-    ret->in_use = mod->in_use;
     ret->handle = mod->handle;
     ret->SetupProc = mod->SetupProc;
     ret->TearDownProc = mod->TearDownProc;
     ret->TearDownData = NULL;
-    ret->path = mod->path;
     ret->child = DuplicateModule(mod->child, ret);
     ret->sib = DuplicateModule(mod->sib, parent);
     ret->parent = parent;
@@ -943,8 +933,6 @@ doLoadModule(const char *module, const char *path, const char **subdirlist,
     if (ret->handle < 0)
 	goto LoadModule_fail;
 
-    ret->filename = xstrdup(found);
-
     /* drop any explicit suffix from the module name */
     p = strchr(name, '.');
     if (p)
@@ -998,7 +986,6 @@ doLoadModule(const char *module, const char *path, const char **subdirlist,
 	    ret->SetupProc = setup;
 	if (teardown)
 	    ret->TearDownProc = teardown;
-	ret->path = path;
 	ret->VersionInfo = vers;
     } else {
 	/* No initdata is OK for external modules */
@@ -1120,7 +1107,6 @@ UnloadModuleOrDriver(ModuleDescPtr mod)
     if (mod->sib)
 	UnloadModuleOrDriver(mod->sib);
     TestFree(mod->name);
-    TestFree(mod->filename);
     xfree(mod);
 #ifdef __alpha__
     istream_mem_barrier();
@@ -1145,7 +1131,6 @@ UnloadSubModule(ModuleDescPtr mod)
 	UnloadModuleOrDriver(mod->child);
 
     TestFree(mod->name);
-    TestFree(mod->filename);
     xfree(mod);
 }
 
@@ -1156,12 +1141,6 @@ FreeModuleDesc(ModuleDescPtr head)
 
     if (head == (ModuleDescPtr) 1)
 	return;
-    /*
-     * only free it if it's not marked as in use. In use means that it may
-     * be unloaded someday, and UnloadModule will free it
-     */
-    if (head->in_use)
-	return;
     if (head->child)
 	FreeModuleDesc(head->child);
     sibs = head;
commit e91ff09568c5579818b6641e88e95c6fe122cbe7
Author: Adam Jackson <ajax at redhat.com>
Date:   Fri Feb 1 17:21:34 2008 +1100

    Friends don't let friends call xf86AddModuleInfo.
    
    That code only existed to leak memory.  It can go now, thanks.

diff --git a/hw/xfree86/common/xf86.h b/hw/xfree86/common/xf86.h
index 4e7d914..4b3e104 100644
--- a/hw/xfree86/common/xf86.h
+++ b/hw/xfree86/common/xf86.h
@@ -337,8 +337,8 @@ int  xf86RegisterRootWindowProperty(int ScrnIndex, Atom	property, Atom type,
 				    pointer value);
 Bool xf86IsUnblank(int mode);
 
-void xf86AddModuleInfo(ModuleInfoPtr info, pointer module);
-void xf86DeleteModuleInfo(int idx);
+_X_DEPRECATED void xf86AddModuleInfo(pointer info, pointer module);
+_X_DEPRECATED void xf86DeleteModuleInfo(int idx);
 void xf86getsecs(long *, long *);
 
 /* xf86Debug.c */
diff --git a/hw/xfree86/common/xf86Globals.c b/hw/xfree86/common/xf86Globals.c
index ba603f4..0dc42c6 100644
--- a/hw/xfree86/common/xf86Globals.c
+++ b/hw/xfree86/common/xf86Globals.c
@@ -153,8 +153,6 @@ DriverPtr *xf86DriverList = NULL;
 int xf86NumDrivers = 0;
 InputDriverPtr *xf86InputDriverList = NULL;
 int xf86NumInputDrivers = 0;
-ModuleInfoPtr *xf86ModuleInfoList = NULL;
-int xf86NumModuleInfos = 0;
 int xf86NumScreens = 0;
 
 const char *xf86VisualNames[] = {
diff --git a/hw/xfree86/common/xf86Helper.c b/hw/xfree86/common/xf86Helper.c
index ec524e6..8978f82 100644
--- a/hw/xfree86/common/xf86Helper.c
+++ b/hw/xfree86/common/xf86Helper.c
@@ -170,37 +170,17 @@ xf86LookupInput(const char *name)
     return NULL;
 }
 
+/* ABI stubs of despair */
 _X_EXPORT void
-xf86AddModuleInfo(ModuleInfoPtr info, pointer module)
+xf86AddModuleInfo(pointer info, pointer module)
 {
-    /* Don't add null entries */
-    if (!module)
-	return;
-
-    if (xf86ModuleInfoList == NULL)
-	xf86NumModuleInfos = 0;
-
-    xf86NumModuleInfos++;
-    xf86ModuleInfoList = xnfrealloc(xf86ModuleInfoList,
-				    xf86NumModuleInfos * sizeof(ModuleInfoPtr));
-    xf86ModuleInfoList[xf86NumModuleInfos - 1] = xnfalloc(sizeof(ModuleInfoRec));
-    *xf86ModuleInfoList[xf86NumModuleInfos - 1] = *info;
-    xf86ModuleInfoList[xf86NumModuleInfos - 1]->module = module;
-    xf86ModuleInfoList[xf86NumModuleInfos - 1]->refCount = 0;
 }
 
 _X_EXPORT void
 xf86DeleteModuleInfo(int idx)
 {
-    if (xf86ModuleInfoList[idx]) {
-	if (xf86ModuleInfoList[idx]->module)
-	    UnloadModule(xf86ModuleInfoList[idx]->module);
-	xfree(xf86ModuleInfoList[idx]);
-	xf86ModuleInfoList[idx] = NULL;
-    }
 }
 
-
 /* Allocate a new ScrnInfoRec in xf86Screens */
 
 _X_EXPORT ScrnInfoPtr
diff --git a/hw/xfree86/common/xf86Priv.h b/hw/xfree86/common/xf86Priv.h
index 4723f5a..32801cb 100644
--- a/hw/xfree86/common/xf86Priv.h
+++ b/hw/xfree86/common/xf86Priv.h
@@ -1,4 +1,3 @@
-
 /*
  * Copyright (c) 1997-2002 by The XFree86 Project, Inc.
  *
@@ -97,8 +96,6 @@ extern Bool xf86SupportedMouseTypes[];
 extern int xf86NumMouseTypes;
 
 extern DriverPtr *xf86DriverList;
-extern ModuleInfoPtr *xf86ModuleInfoList;
-extern int xf86NumModuleInfos;
 extern int xf86NumDrivers;
 extern Bool xf86Resetting;
 extern Bool xf86Initialising;
diff --git a/hw/xfree86/common/xf86str.h b/hw/xfree86/common/xf86str.h
index 2e02135..fc94284 100644
--- a/hw/xfree86/common/xf86str.h
+++ b/hw/xfree86/common/xf86str.h
@@ -348,7 +348,7 @@ typedef struct _DriverRec {
  * functions to configuration tools, the Xserver, or any other
  * application/module interested in such information.
  */
-typedef struct _ModuleInfoRec {
+_X_DEPRECATED typedef struct _ModuleInfoRec {
     int			moduleVersion;
     char *		moduleName;
     pointer		module;
diff --git a/hw/xfree86/exa/examodule.c b/hw/xfree86/exa/examodule.c
index b8d306e..086639c 100644
--- a/hw/xfree86/exa/examodule.c
+++ b/hw/xfree86/exa/examodule.c
@@ -178,8 +178,6 @@ exaDDXDriverInit(ScreenPtr pScreen)
     
 }
 
-static MODULESETUPPROTO(exaSetup);
-
 /*ARGSUSED*/
 static const OptionInfoRec *
 EXAAvailableOptions(void *unused)
@@ -201,26 +199,4 @@ static XF86ModuleVersionInfo exaVersRec =
 	{0,0,0,0}
 };
 
-_X_EXPORT XF86ModuleData exaModuleData = { &exaVersRec, exaSetup, NULL };
-
-static ModuleInfoRec EXA = {
-    1,
-    "EXA",
-    NULL,
-    0,
-    EXAAvailableOptions,
-};
-
-/*ARGSUSED*/
-static pointer
-exaSetup(pointer Module, pointer Options, int *ErrorMajor, int *ErrorMinor)
-{
-    static Bool Initialised = FALSE;
-
-    if (!Initialised) {
-	Initialised = TRUE;
-	xf86AddModuleInfo(&EXA, Module);
-    }
-
-    return (pointer)TRUE;
-}
+_X_EXPORT XF86ModuleData exaModuleData = { &exaVersRec, NULL, NULL };
diff --git a/hw/xfree86/loader/xf86sym.c b/hw/xfree86/loader/xf86sym.c
index 623e87a..754e9c0 100644
--- a/hw/xfree86/loader/xf86sym.c
+++ b/hw/xfree86/loader/xf86sym.c
@@ -479,8 +479,6 @@ _X_HIDDEN void *xfree86LookupTab[] = {
     SYMFUNC(xf86IsScreenPrimary)
     SYMFUNC(xf86RegisterRootWindowProperty)
     SYMFUNC(xf86IsUnblank)
-    SYMFUNC(xf86AddModuleInfo)
-    SYMFUNC(xf86DeleteModuleInfo)
 
 #if (defined(__sparc__) || defined(__sparc)) && !defined(__OpenBSD__)
     /* xf86sbusBus.c */
diff --git a/hw/xfree86/xaa/xaaInitAccel.c b/hw/xfree86/xaa/xaaInitAccel.c
index fe0b70a..1b7c154 100644
--- a/hw/xfree86/xaa/xaaInitAccel.c
+++ b/hw/xfree86/xaa/xaaInitAccel.c
@@ -93,8 +93,6 @@ static const OptionInfoRec XAAOptions[] = {
 				OPTV_NONE,	{0}, FALSE }
 };
 
-static MODULESETUPPROTO(xaaSetup);
-
 static XF86ModuleVersionInfo xaaVersRec =
 {
 	"xaa",
@@ -109,29 +107,7 @@ static XF86ModuleVersionInfo xaaVersRec =
 	{0,0,0,0}
 };
 
-_X_EXPORT XF86ModuleData xaaModuleData = { &xaaVersRec, xaaSetup, NULL };
-
-ModuleInfoRec XAA = {
-    1,
-    "XAA",
-    NULL,
-    0,
-    XAAAvailableOptions,
-};
-
-/*ARGSUSED*/
-static pointer
-xaaSetup(pointer Module, pointer Options, int *ErrorMajor, int *ErrorMinor)
-{
-    static Bool Initialised = FALSE;
-
-    if (!Initialised) {
-	Initialised = TRUE;
-	xf86AddModuleInfo(&XAA, Module);
-    }
-
-    return (pointer)TRUE;
-}
+_X_EXPORT XF86ModuleData xaaModuleData = { &xaaVersRec, NULL, NULL };
 
 /*ARGSUSED*/
 static const OptionInfoRec *
commit 0bdd20a0454c94f902fd4874855125bf7510fcf5
Author: Adam Jackson <ajax at redhat.com>
Date:   Fri Feb 1 16:15:58 2008 +1100

    Eradicate the VTInit code.
    
    "This option should rarely be used."  Never sounds like a better idea.

diff --git a/hw/xfree86/common/xf86Config.c b/hw/xfree86/common/xf86Config.c
index 622c318..605c6b3 100644
--- a/hw/xfree86/common/xf86Config.c
+++ b/hw/xfree86/common/xf86Config.c
@@ -733,7 +733,6 @@ typedef enum {
     FLAG_DISABLEMODINDEV,
     FLAG_MODINDEVALLOWNONLOCAL,
     FLAG_ALLOWMOUSEOPENFAIL,
-    FLAG_VTINIT,
     FLAG_VTSYSREQ,
     FLAG_XKBDISABLE,
     FLAG_PCIPROBE1,
@@ -785,8 +784,6 @@ static OptionInfoRec FlagOptions[] = {
 	{0}, FALSE },
   { FLAG_ALLOWMOUSEOPENFAIL,	"AllowMouseOpenFail",		OPTV_BOOLEAN,
 	{0}, FALSE },
-  { FLAG_VTINIT,		"VTInit",			OPTV_STRING,
-	{0}, FALSE },
   { FLAG_VTSYSREQ,		"VTSysReq",			OPTV_BOOLEAN,
 	{0}, FALSE },
   { FLAG_XKBDISABLE,		"XkbDisable",			OPTV_BOOLEAN,
@@ -977,8 +974,6 @@ configServerFlags(XF86ConfFlagsPtr flagsconf, XF86OptionPtr layoutopts)
 #endif
     }
 
-    xf86Info.vtinit = xf86GetOptValString(FlagOptions, FLAG_VTINIT);
-
     if (xf86IsOptionSet(FlagOptions, FLAG_PCIPROBE1))
 	xf86Info.pciFlags = PCIProbe1;
     if (xf86IsOptionSet(FlagOptions, FLAG_PCIPROBE2))
diff --git a/hw/xfree86/common/xf86Globals.c b/hw/xfree86/common/xf86Globals.c
index d796d62..ba603f4 100644
--- a/hw/xfree86/common/xf86Globals.c
+++ b/hw/xfree86/common/xf86Globals.c
@@ -97,7 +97,6 @@ InputInfoPtr xf86InputDevs = NULL;
 xf86InfoRec xf86Info = {
 	-1,		/* consoleFd */
 	-1,		/* vtno */
-	NULL,		/* vtinit */
 	FALSE,		/* vtSysreq */
 	SKWhenNeeded,	/* ddxSpecialKeys */
 	NULL,		/* pMouse */
diff --git a/hw/xfree86/common/xf86Init.c b/hw/xfree86/common/xf86Init.c
index 2a7ecfd..41cf1d1 100644
--- a/hw/xfree86/common/xf86Init.c
+++ b/hw/xfree86/common/xf86Init.c
@@ -102,7 +102,6 @@ static void xf86PrintBanner(void);
 static void xf86PrintMarkers(void);
 static void xf86PrintDefaultModulePath(void);
 static void xf86PrintDefaultLibraryPath(void);
-static void xf86RunVtInit(void);
 
 static Bool probe_devices_from_device_sections(DriverPtr drvp);
 static Bool add_matching_devices_to_configure_list(DriverPtr drvp);
@@ -238,9 +237,6 @@ PostConfigInit(void)
     xf86OSPMClose = xf86OSPMOpen();
 #endif
     
-    /* Run an external VT Init program if specified in the config file */
-    xf86RunVtInit();
-
     /* Do this after XF86Config is read (it's normally in OsInit()) */
     OsInitColors();
 }
@@ -1915,44 +1911,6 @@ xf86PrintDefaultLibraryPath(void)
   ErrorF("%s\n", DEFAULT_LIBRARY_PATH);
 }
 
-static void
-xf86RunVtInit(void)
-{
-    int i;
-
-    /*
-     * If VTInit was set, run that program with consoleFd as stdin and stdout
-     */
-
-    if (xf86Info.vtinit) {
-      switch(fork()) {
-      case -1:
-          FatalError("xf86RunVtInit: fork failed (%s)\n", strerror(errno));
-          break;
-      case 0:  /* child */
-	  if (setuid(getuid()) == -1) {
-	      xf86Msg(X_ERROR, "xf86RunVtInit: setuid failed (%s)\n",
-			 strerror(errno));
-	      exit(255);
-	  }
-          /* set stdin, stdout to the consoleFd */
-          for (i = 0; i < 2; i++) {
-            if (xf86Info.consoleFd != i) {
-              close(i);
-              dup(xf86Info.consoleFd);
-            }
-          }
-          execl("/bin/sh", "sh", "-c", xf86Info.vtinit, (void *)NULL);
-          xf86Msg(X_WARNING, "exec of /bin/sh failed for VTInit (%s)\n",
-                 strerror(errno));
-          exit(255);
-          break;
-      default:  /* parent */
-          wait(NULL);
-      }
-    }
-}
-
 /*
  * xf86LoadModules iterates over a list that is being passed in.
  */             
diff --git a/hw/xfree86/common/xf86Privstr.h b/hw/xfree86/common/xf86Privstr.h
index 92a6305..d97ca44 100644
--- a/hw/xfree86/common/xf86Privstr.h
+++ b/hw/xfree86/common/xf86Privstr.h
@@ -75,7 +75,6 @@ typedef enum {
 typedef struct {
     int			consoleFd;
     int			vtno;
-    char *		vtinit;
     Bool		vtSysreq;
     SpecialKeysInDDX	ddxSpecialKeys;
 
diff --git a/hw/xfree86/doc/man/xorg.conf.man.pre b/hw/xfree86/doc/man/xorg.conf.man.pre
index 608ba37..96f30c4 100644
--- a/hw/xfree86/doc/man/xorg.conf.man.pre
+++ b/hw/xfree86/doc/man/xorg.conf.man.pre
@@ -507,17 +507,6 @@ This allows the server to start up even if the mouse device can't be
 opened/initialised.
 Default: false.
 .TP 7
-.BI "Option \*qVTInit\*q  \*q" command \*q
-Runs
-.I command
-after the VT used by the server has been opened.
-The command string is passed to \*q/bin/sh \-c\*q, and is run with the real
-user's id with stdin and stdout set to the VT.
-The purpose of this option is to allow system dependent VT initialisation
-commands to be run.
-This option should rarely be needed.
-Default: not set.
-.TP 7
 .BI "Option \*qVTSysReq\*q  \*q" boolean \*q
 enables the SYSV\-style VT switch sequence for non\-SYSV systems
 which support VT switching.
diff --git a/hw/xfree86/parser/xf86tokens.h b/hw/xfree86/parser/xf86tokens.h
index 786dac1..6e4fdea 100644
--- a/hw/xfree86/parser/xf86tokens.h
+++ b/hw/xfree86/parser/xf86tokens.h
@@ -208,7 +208,6 @@ typedef enum {
     XKBVARIANT,
     XKBOPTIONS,
     /* The next two have become ServerFlags options */
-    VTINIT,
     VTSYSREQ,
     /* Obsolete keyboard tokens */
     SERVERNUM,
commit 24089b06243101b1bff4f2fd79fcbfd6a93992d5
Author: Adam Jackson <ajax at redhat.com>
Date:   Fri Feb 1 16:11:13 2008 +1100

    Don't bother warning people about the keyboard driver rename, just do it.

diff --git a/hw/xfree86/common/xf86Init.c b/hw/xfree86/common/xf86Init.c
index a3ddfd0..2a7ecfd 100644
--- a/hw/xfree86/common/xf86Init.c
+++ b/hw/xfree86/common/xf86Init.c
@@ -1135,12 +1135,6 @@ InitInput(argc, argv)
 	for (pDev = xf86ConfigLayout.inputs; pDev && *pDev; pDev++) {
 	    /* Replace obsolete keyboard driver with kbd */
 	    if (!xf86NameCmp((*pDev)->driver, "keyboard")) {
-		xf86MsgVerb(X_WARNING, 0,
-			    "*** WARNING the legacy keyboard driver \"%s\" has been removed\n",
-			    (*pDev)->driver);
-		xf86MsgVerb(X_WARNING, 0,
-			    "*** Using the new \"kbd\" driver for \"%s\".\n",
-			    (*pDev)->identifier);
 		strcpy((*pDev)->driver, "kbd");
             }
 
commit 2aaf6ac134fa9f61984b1c03929c7b596c971cc8
Author: Adam Jackson <ajax at redhat.com>
Date:   Fri Feb 1 16:10:23 2008 +1100

    Don't even attempt to parse -bpp in xfree86 DDX option parsing.
    
    This hasn't been valid since 1999.  Get with the times, man.

diff --git a/hw/xfree86/common/xf86Init.c b/hw/xfree86/common/xf86Init.c
index d12b6bd..a3ddfd0 100644
--- a/hw/xfree86/common/xf86Init.c
+++ b/hw/xfree86/common/xf86Init.c
@@ -1566,15 +1566,6 @@ ddxProcessArgument(int argc, char **argv, int i)
     xf86sFlag = TRUE;
     return 0;
   }
-  if (!strcmp(argv[i], "-bpp"))
-  {
-    ErrorF("The -bpp option is no longer supported.\n"
-	"\tUse -depth to set the color depth, and use -fbbpp if you really\n"
-	"\tneed to force a non-default framebuffer (hardware) pixel format.\n");
-    if (++i >= argc)
-      return 1;
-    return 2;
-  }
   if (!strcmp(argv[i], "-pixmap24"))
   {
     xf86Pix24 = Pix24Use24;
commit ef77e4c4419703b5a802f3eee92476a43f788a86
Author: Adam Jackson <ajax at redhat.com>
Date:   Fri Feb 1 16:03:01 2008 +1100

    Remove useless commentary from environment and argument processing.

diff --git a/os/utils.c b/os/utils.c
index 22f9541..4041028 100644
--- a/os/utils.c
+++ b/os/utils.c
@@ -2002,18 +2002,6 @@ enum BadCode {
 #define BUGADDRESS "xorg at freedesktop.org"
 #endif
 
-#define ARGMSG \
-    "\nIf the arguments used are valid, and have been rejected incorrectly\n" \
-      "please send details of the arguments and why they are valid to\n" \
-      "%s.  In the meantime, you can start the Xserver as\n" \
-      "the \"super user\" (root).\n"   
-
-#define ENVMSG \
-    "\nIf the environment is valid, and have been rejected incorrectly\n" \
-      "please send details of the environment and why it is valid to\n" \
-      "%s.  In the meantime, you can start the Xserver as\n" \
-      "the \"super user\" (root).\n"
-
 void
 CheckUserParameters(int argc, char **argv, char **envp)
 {
@@ -2060,10 +2048,6 @@ CheckUserParameters(int argc, char **argv, char **envp)
 		/* Check for bad environment variables and values */
 #if REMOVE_ENV_LD
 		while (envp[i] && (strncmp(envp[i], "LD", 2) == 0)) {
-#ifdef ENVDEBUG
-		    ErrorF("CheckUserParameters: removing %s from the "
-			   "environment\n", strtok(envp[i], "="));
-#endif
 		    for (j = i; envp[j]; j++) {
 			envp[j] = envp[j+1];
 		    }
@@ -2071,10 +2055,6 @@ CheckUserParameters(int argc, char **argv, char **envp)
 #endif   
 		if (envp[i] && (strlen(envp[i]) > MAX_ENV_LENGTH)) {
 #if REMOVE_LONG_ENV
-#ifdef ENVDEBUG
-		    ErrorF("CheckUserParameters: removing %s from the "
-			   "environment\n", strtok(envp[i], "="));
-#endif
 		    for (j = i; envp[j]; j++) {
 			envp[j] = envp[j+1];
 		    }
@@ -2127,20 +2107,16 @@ CheckUserParameters(int argc, char **argv, char **envp)
 	return;
     case UnsafeArg:
 	ErrorF("Command line argument number %d is unsafe\n", i);
-	ErrorF(ARGMSG, BUGADDRESS);
 	break;
     case ArgTooLong:
 	ErrorF("Command line argument number %d is too long\n", i);
-	ErrorF(ARGMSG, BUGADDRESS);
 	break;
     case UnprintableArg:
 	ErrorF("Command line argument number %d contains unprintable"
 		" characters\n", i);
-	ErrorF(ARGMSG, BUGADDRESS);
 	break;
     case EnvTooLong:
 	ErrorF("Environment variable `%s' is too long\n", e);
-	ErrorF(ENVMSG, BUGADDRESS);
 	break;
     case OutputIsPipe:
 	ErrorF("Stdout and/or stderr is a pipe\n");
@@ -2150,8 +2126,6 @@ CheckUserParameters(int argc, char **argv, char **envp)
 	break;
     default:
 	ErrorF("Unknown error\n");
-	ErrorF(ARGMSG, BUGADDRESS);
-	ErrorF(ENVMSG, BUGADDRESS);
 	break;
     }
     FatalError("X server aborted because of unsafe environment\n");
commit f3b3b37ec6197f8884417fbc26630d3a28f2e319
Author: Adam Jackson <ajax at redhat.com>
Date:   Fri Feb 1 15:36:11 2008 +1100

    Use strerror instead of errno values in user strings.

diff --git a/Xext/xf86bigfont.c b/Xext/xf86bigfont.c
index 779f3b9..d5c5704 100644
--- a/Xext/xf86bigfont.c
+++ b/Xext/xf86bigfont.c
@@ -236,15 +236,15 @@ shmalloc(
     size = (size + pagesize-1) & -pagesize;
     shmid = shmget(IPC_PRIVATE, size, S_IWUSR | S_IRUSR | S_IRGRP | S_IROTH);
     if (shmid == -1) {
-	ErrorF(XF86BIGFONTNAME " extension: shmget() failed, size = %u, errno = %d\n",
-	       size, errno);
+	ErrorF(XF86BIGFONTNAME " extension: shmget() failed, size = %u, %s\n",
+	       size, strerror(errno));
 	xfree(pDesc);
 	return (ShmDescPtr) NULL;
     }
 
     if ((addr = shmat(shmid, 0, 0)) == (char *)-1) {
-	ErrorF(XF86BIGFONTNAME " extension: shmat() failed, size = %u, errno = %d\n",
-	       size, errno);
+	ErrorF(XF86BIGFONTNAME " extension: shmat() failed, size = %u, %s\n",
+	       size, strerror(errno));
 	shmctl(shmid, IPC_RMID, (void *) 0);
 	xfree(pDesc);
 	return (ShmDescPtr) NULL;
diff --git a/hw/dmx/examples/ev.c b/hw/dmx/examples/ev.c
index 1091226..ba45c2b 100644
--- a/hw/dmx/examples/ev.c
+++ b/hw/dmx/examples/ev.c
@@ -174,7 +174,7 @@ int main(int argc, char **argv)
                 }
                 printf("\n");
             }
-            printf("rc = %d, errno = %d (%s)\n", rc, errno, strerror(errno));
+            printf("rc = %d, (%s)\n", rc, strerror(errno));
             close(fd);
         }
     }
diff --git a/hw/kdrive/linux/linux.c b/hw/kdrive/linux/linux.c
index 23cd8f5..258dc7b 100644
--- a/hw/kdrive/linux/linux.c
+++ b/hw/kdrive/linux/linux.c
@@ -441,7 +441,7 @@ LinuxFini (void)
 	memset (&vts, '\0', sizeof (vts));	/* valgrind */
 	ioctl (fd, VT_GETSTATE, &vts);
 	if (ioctl (fd, VT_DISALLOCATE, vtno) < 0)
-	    fprintf (stderr, "Can't deallocate console %d errno %d\n", vtno, errno);
+	    fprintf (stderr, "Can't deallocate console %d %s\n", vtno, strerror(errno));
 	close (fd);
     }
     return;
diff --git a/hw/kdrive/src/kmap.c b/hw/kdrive/src/kmap.c
index b92c1a8..ce1e28a 100644
--- a/hw/kdrive/src/kmap.c
+++ b/hw/kdrive/src/kmap.c
@@ -132,8 +132,8 @@ KdSetMappedMode (CARD32 addr, CARD32 size, int mode)
 	sentry.type = type;
 	
 	if (ioctl (mtrr, MTRRIOC_ADD_ENTRY, &sentry) < 0)
-	    ErrorF ("MTRRIOC_ADD_ENTRY failed 0x%x 0x%x %d (errno %d)\n",
-		    base, bound - base, type, errno);
+	    ErrorF ("MTRRIOC_ADD_ENTRY failed 0x%x 0x%x %d (%s)\n",
+		    base, bound - base, type, strerror(errno));
     }
 #endif
 }
@@ -171,8 +171,8 @@ KdResetMappedMode (CARD32 addr, CARD32 size, int mode)
 	sentry.type = type;
 	
 	if (ioctl (mtrr, MTRRIOC_DEL_ENTRY, &sentry) < 0)
-	    ErrorF ("MTRRIOC_DEL_ENTRY failed 0x%x 0x%x %d (errno %d)\n",
-		    base, bound - base, type, errno);
+	    ErrorF ("MTRRIOC_DEL_ENTRY failed 0x%x 0x%x %d (%s)\n",
+		    base, bound - base, type, strerror(errno));
     }
 #endif
 }
diff --git a/hw/kdrive/vesa/vm86.c b/hw/kdrive/vesa/vm86.c
index 78fc593..0f7bb22 100644
--- a/hw/kdrive/vesa/vm86.c
+++ b/hw/kdrive/vesa/vm86.c
@@ -567,7 +567,7 @@ vm86_loop(Vm86InfoPtr vi)
                 if(errno == ENOSYS) {
                     ErrorF("No vm86 support.  Are you running on AMD64?\n");
                 } else {
-                    ErrorF("vm86 failed (errno = %d).\n", errno);
+                    ErrorF("vm86 failed (%s).\n", strerror(errno));
                     Vm86Debug(vi);
                 }
             } else {
diff --git a/hw/vfb/InitOutput.c b/hw/vfb/InitOutput.c
index a00f7a5..1edceb9 100644
--- a/hw/vfb/InitOutput.c
+++ b/hw/vfb/InitOutput.c
@@ -179,8 +179,8 @@ ddxGiveUp()
 	    if (-1 == unlink(vfbScreens[i].mmap_file))
 	    {
 		perror("unlink");
-		ErrorF("unlink %s failed, errno %d",
-		       vfbScreens[i].mmap_file, errno);
+		ErrorF("unlink %s failed, %s",
+		       vfbScreens[i].mmap_file, strerror(errno));
 	    }
 	}
 	break;
@@ -196,7 +196,7 @@ ddxGiveUp()
 	    if (-1 == shmdt((char *)vfbScreens[i].pXWDHeader))
 	    {
 		perror("shmdt");
-		ErrorF("shmdt failed, errno %d", errno);
+		ErrorF("shmdt failed, %s", strerror(errno));
 	    }
 	}
 	break;
@@ -582,7 +582,7 @@ vfbBlockHandler(pointer blockData, OSTimePtr pTimeout, pointer pReadmask)
 #endif
 	{
 	    perror("msync");
-	    ErrorF("msync failed, errno %d", errno);
+	    ErrorF("msync failed, %s", strerror(errno));
 	}
     }
 }
@@ -605,7 +605,7 @@ vfbAllocateMmappedFramebuffer(vfbScreenInfoPtr pvfb)
     if (-1 == (pvfb->mmap_fd = open(pvfb->mmap_file, O_CREAT|O_RDWR, 0666)))
     {
 	perror("open");
-	ErrorF("open %s failed, errno %d", pvfb->mmap_file, errno);
+	ErrorF("open %s failed, %s", pvfb->mmap_file, strerror(errno));
 	return;
     }
 
@@ -621,7 +621,7 @@ vfbAllocateMmappedFramebuffer(vfbScreenInfoPtr pvfb)
 	if (-1 == write(pvfb->mmap_fd, dummyBuffer, writeThisTime))
 	{
 	    perror("write");
-	    ErrorF("write %s failed, errno %d", pvfb->mmap_file, errno);
+	    ErrorF("write %s failed, %s", pvfb->mmap_file, strerror(errno));
 	    return;
 	}
     }
@@ -635,7 +635,7 @@ vfbAllocateMmappedFramebuffer(vfbScreenInfoPtr pvfb)
     if (-1 == (long)pvfb->pXWDHeader)
     {
 	perror("mmap");
-	ErrorF("mmap %s failed, errno %d", pvfb->mmap_file, errno);
+	ErrorF("mmap %s failed, %s", pvfb->mmap_file, strerror(errno));
 	pvfb->pXWDHeader = NULL;
 	return;
     }
@@ -659,7 +659,7 @@ vfbAllocateSharedMemoryFramebuffer(vfbScreenInfoPtr pvfb)
     if (pvfb->shmid < 0)
     {
 	perror("shmget");
-	ErrorF("shmget %d bytes failed, errno %d", pvfb->sizeInBytes, errno);
+	ErrorF("shmget %d bytes failed, %s", pvfb->sizeInBytes, strerror(errno));
 	return;
     }
 
@@ -669,7 +669,7 @@ vfbAllocateSharedMemoryFramebuffer(vfbScreenInfoPtr pvfb)
     if (-1 == (long)pvfb->pXWDHeader)
     {
 	perror("shmat");
-	ErrorF("shmat failed, errno %d", errno);
+	ErrorF("shmat failed, %s", strerror(errno));
 	pvfb->pXWDHeader = NULL; 
 	return;
     }
diff --git a/hw/xfree86/os-support/bsd/bsd_apm.c b/hw/xfree86/os-support/bsd/bsd_apm.c
index 6177987..43eda74 100644
--- a/hw/xfree86/os-support/bsd/bsd_apm.c
+++ b/hw/xfree86/os-support/bsd/bsd_apm.c
@@ -66,7 +66,7 @@ bsdPMGetEventFromOS(int fd, pmEvent *events, int num)
 	if (ioctl(fd, APM_IOC_NEXTEVENT, &bsdEvent) < 0) {
 	    if (errno != EAGAIN) {
 		xf86Msg(X_WARNING, "bsdPMGetEventFromOS: APM_IOC_NEXTEVENT"
-			" errno = %d\n", errno);
+			" %s\n", strerror(errno));
 	    }
 	    break;
 	}
diff --git a/hw/xfree86/os-support/bsd/bsd_kqueue_apm.c b/hw/xfree86/os-support/bsd/bsd_kqueue_apm.c
index b0171e2..b37070c 100644
--- a/hw/xfree86/os-support/bsd/bsd_kqueue_apm.c
+++ b/hw/xfree86/os-support/bsd/bsd_kqueue_apm.c
@@ -102,7 +102,7 @@ bsdPMGetEventFromOS(int kq, pmEvent *events, int num)
 	    break;
 	} else if (result < 0) {
 	    xf86Msg(X_WARNING, "bsdPMGetEventFromOS: kevent returns"
-		    " errno = %d\n", errno);
+		    " %s\n", strerror(errno));
 	    break;
 	}
 	events[i] = bsdToXF86(APM_EVENT_TYPE(ev.data));
diff --git a/hw/xfree86/os-support/solaris/sun_apm.c b/hw/xfree86/os-support/solaris/sun_apm.c
index a9657fd..7decc90 100644
--- a/hw/xfree86/os-support/solaris/sun_apm.c
+++ b/hw/xfree86/os-support/solaris/sun_apm.c
@@ -149,7 +149,7 @@ sunPMGetEventFromOS(int fd, pmEvent *events, int num)
 	if (ioctl(fd, APM_IOC_NEXTEVENT, &sunEvent) < 0) {
 	    if (errno != EAGAIN) {
 		xf86Msg(X_WARNING, "sunPMGetEventFromOS: APM_IOC_NEXTEVENT"
-			" errno = %d\n", errno);
+			" %s\n", strerror(errno));
 	    }
 	    break;
 	}
@@ -178,7 +178,7 @@ sunPMConfirmEventToOs(int fd, pmEvent event)
             return PM_CONTINUE;
         else {
 	    xf86Msg(X_WARNING, "sunPMConfirmEventToOs: APM_IOC_SUSPEND"
-		" errno = %d\n", errno);
+		" %s\n", strerror(errno));
             return PM_FAILED;
 	}
       case XF86_APM_STANDBY_RESUME:
@@ -191,7 +191,7 @@ sunPMConfirmEventToOs(int fd, pmEvent event)
             return PM_CONTINUE;
         else {
 	    xf86Msg(X_WARNING, "sunPMConfirmEventToOs: APM_IOC_RESUME"
-		" errno = %d\n", errno);
+		" %s\n", strerror(errno));
             return PM_FAILED;
 	}
       default:
diff --git a/hw/xprint/ps/psout_ftpstype1.c b/hw/xprint/ps/psout_ftpstype1.c
index 2d40c18..572e136 100644
--- a/hw/xprint/ps/psout_ftpstype1.c
+++ b/hw/xprint/ps/psout_ftpstype1.c
@@ -124,7 +124,7 @@ int PsOut_DownloadFreeType1(PsOutPtr self, const char *psfontname, FontPtr pFont
   switch(childpid)
   {
     case -1:
-        FatalError("PS DDX internal error: Cannot fork() converter child process, errno=%d\n", (int)errno);
+        FatalError("PS DDX internal error: Cannot fork() converter child process, %s\n", strerror(errno));
         break;
     case 0: /* child */
         fclose(self->Fp);
diff --git a/hw/xquartz/darwinKeyboard.c b/hw/xquartz/darwinKeyboard.c
index b368fe9..8d1ee8e 100644
--- a/hw/xquartz/darwinKeyboard.c
+++ b/hw/xquartz/darwinKeyboard.c
@@ -344,13 +344,13 @@ static Bool DarwinReadKeymapFile(NXKeyMapping *keyMap) {
 
     fref = fopen( darwinKeymapFile, "rb" );
     if (fref == NULL) {
-        ErrorF("Unable to open keymapping file '%s' (errno %d).\n",
-               darwinKeymapFile, errno);
+        ErrorF("Unable to open keymapping file '%s' (%s).\n",
+               darwinKeymapFile, strerror(errno));
         return FALSE;
     }
     if (fstat(fileno(fref), &st) == -1) {
-        ErrorF("Could not stat keymapping file '%s' (errno %d).\n",
-               darwinKeymapFile, errno);
+        ErrorF("Could not stat keymapping file '%s' (%s).\n",
+               darwinKeymapFile, strerror(errno));
         return FALSE;
     }
 
@@ -364,8 +364,8 @@ static Bool DarwinReadKeymapFile(NXKeyMapping *keyMap) {
     inBuffer = (char*) xalloc( st.st_size );
     bufferEnd = (int *) (inBuffer + st.st_size);
     if (fread(inBuffer, st.st_size, 1, fref) != 1) {
-        ErrorF("Could not read %qd bytes from keymapping file '%s' (errno %d).\n",
-               st.st_size, darwinKeymapFile, errno);
+        ErrorF("Could not read %qd bytes from keymapping file '%s' (%s).\n",
+               st.st_size, darwinKeymapFile, strerror(errno));
         return FALSE;
     }
 
diff --git a/os/WaitFor.c b/os/WaitFor.c
index c58f248..36e01ca 100644
--- a/os/WaitFor.c
+++ b/os/WaitFor.c
@@ -254,13 +254,13 @@ WaitForSomething(int *pClientsReady)
 		}
 		else if (selecterr == EINVAL)
 		{
-		    FatalError("WaitForSomething(): select: errno=%d\n",
-			selecterr);
+		    FatalError("WaitForSomething(): select: %s\n",
+			strerror(selecterr));
             }
 		else if (selecterr != EINTR && selecterr != EAGAIN)
 		{
-		    ErrorF("WaitForSomething(): select: errno=%d\n",
-			selecterr);
+		    ErrorF("WaitForSomething(): select: %s\n",
+			strerror(selecterr));
 		}
 	    }
 #ifdef SMART_SCHEDULE
commit b740b865e4c156a40adc6b63fcf215156fc9151a
Author: Adam Jackson <ajax at redhat.com>
Date:   Fri Feb 1 15:16:01 2008 +1100

    Silence an error message in ConfigureWindow that never happens.

diff --git a/dix/window.c b/dix/window.c
index 1ccf126..b896ef7 100644
--- a/dix/window.c
+++ b/dix/window.c
@@ -2155,7 +2155,7 @@ WhereDoIGoInTheStack(
 	    return pWin->nextSib;
       default:
       {
-	ErrorF("Internal error in ConfigureWindow, smode == %d\n",smode );
+	/* should never happen; make something up. */
 	return pWin->nextSib;
       }
     }
commit 89d3249c3e7611b22414bc84b10ca60aab4b9a77
Author: Adam Jackson <ajax at redhat.com>
Date:   Fri Feb 1 15:11:27 2008 +1100

    Silence FreeResource()

diff --git a/dix/resource.c b/dix/resource.c
index 6c1b04d..f318de3 100644
--- a/dix/resource.c
+++ b/dix/resource.c
@@ -535,7 +535,6 @@ FreeResource(XID id, RESTYPE skipDeleteFuncType)
     ResourcePtr *prev, *head;
     int *eltptr;
     int		elements;
-    Bool	gotOne = FALSE;
 
     if (((cid = CLIENT_ID(id)) < MAXCLIENTS) && clientTable[cid].buckets)
     {
@@ -563,15 +562,11 @@ FreeResource(XID id, RESTYPE skipDeleteFuncType)
 		xfree(res);
 		if (*eltptr != elements)
 		    prev = head; /* prev may no longer be valid */
-		gotOne = TRUE;
 	    }
 	    else
 		prev = &res->next;
         }
     }
-    if (!gotOne)
-	ErrorF("Freeing resource id=%lX which isn't there.\n",
-		   (unsigned long)id);
 }
 
 
commit 238b816469355159eea98600ca900e3baa8fa313
Author: Adam Jackson <ajax at redhat.com>
Date:   Fri Feb 1 15:08:03 2008 +1100

    X.Org Group -> X.Org Foundation

diff --git a/include/site.h b/include/site.h
index 279cf2d..fec8707 100644
--- a/include/site.h
+++ b/include/site.h
@@ -52,7 +52,7 @@ SOFTWARE.
  * server executable.
  */
 #ifndef VENDOR_STRING
-#define VENDOR_STRING "The X.Org Group"
+#define VENDOR_STRING "The X.Org Foundation"
 #endif
 
 /*
commit 9113fa3de36e84bbae2727cace82b1cf0d709a86
Author: Adam Jackson <ajax at redhat.com>
Date:   Fri Feb 1 15:03:57 2008 +1100

    Silence the harmless FreeFontPath error message.

diff --git a/dix/dixfonts.c b/dix/dixfonts.c
index 8def6ee..e9a3f39 100644
--- a/dix/dixfonts.c
+++ b/dix/dixfonts.c
@@ -1644,9 +1644,6 @@ FreeFontPath(FontPathElementPtr *list, int n, Bool force)
 		    found++;
 	    }
 	    if (list[i]->refcount != found) {
-		ErrorF("FreeFontPath: FPE \"%.*s\" refcount is %d, should be %d; fixing.\n",
-		       list[i]->name_length, list[i]->name,
-		       list[i]->refcount, found);
 		list[i]->refcount = found; /* ensure it will get freed */
 	    }
 	}
commit 7c0709a736c0f3aa011de67dd2c2962585ab146e
Author: Adam Jackson <ajax at redhat.com>
Date:   Fri Feb 1 14:59:58 2008 +1100

    requestingClient is an xprintism, hide it for other servers.

diff --git a/dix/dispatch.c b/dix/dispatch.c
index 32efff7..e8e650a 100644
--- a/dix/dispatch.c
+++ b/dix/dispatch.c
@@ -417,7 +417,9 @@ Dispatch(void)
 	    }
 	    isItTimeToYield = FALSE;
  
+#ifdef XPRINT
             requestingClient = client;
+#endif
 #ifdef SMART_SCHEDULE
 	    start_tick = SmartScheduleTime;
 #endif
@@ -489,7 +491,9 @@ Dispatch(void)
 	    if (client)
 		client->smart_stop_tick = SmartScheduleTime;
 #endif
+#ifdef XPRINT
 	    requestingClient = NULL;
+#endif
 	}
 	dispatchException &= ~DE_PRIORITYCHANGE;
     }
diff --git a/dix/dixfonts.c b/dix/dixfonts.c
index 04f1f1b..8def6ee 100644
--- a/dix/dixfonts.c
+++ b/dix/dixfonts.c
@@ -1934,12 +1934,15 @@ GetDefaultPointSize ()
 FontResolutionPtr
 GetClientResolutions (int *num)
 {
+#ifdef XPRINT
     if (requestingClient && requestingClient->fontResFunc != NULL &&
 	!requestingClient->clientGone)
     {
 	return (*requestingClient->fontResFunc)(requestingClient, num);
     }
-    else {
+    else
+#endif
+    {
 	static struct _FontResolution res;
 	ScreenPtr   pScreen;
 
diff --git a/dix/globals.c b/dix/globals.c
index d76b604..7f95eab 100644
--- a/dix/globals.c
+++ b/dix/globals.c
@@ -143,7 +143,9 @@ Bool loadableFonts = FALSE;
 CursorPtr rootCursor;
 Bool blackRoot=FALSE;
 Bool whiteRoot=FALSE;
+#ifdef XPRINT
 ClientPtr requestingClient;	/* XXX this should be obsolete now, remove? */
+#endif
 
 _X_EXPORT TimeStamp currentTime;
 _X_EXPORT TimeStamp lastDeviceEventTime;
diff --git a/hw/xnest/Font.c b/hw/xnest/Font.c
index 72edcee..9f30085 100644
--- a/hw/xnest/Font.c
+++ b/hw/xnest/Font.c
@@ -44,8 +44,10 @@ xnestRealizeFont(ScreenPtr pScreen, FontPtr pFont)
 
   FontSetPrivate(pFont, xnestFontPrivateIndex, NULL);
 
+#ifdef XPRINT
   if (requestingClient && XpClientIsPrintClient(requestingClient, NULL))
       return True;
+#endif
 
   name_atom = MakeAtom("FONT", 4, True);
   value_atom = 0L;
diff --git a/include/dix.h b/include/dix.h
index ec9806a..52212e7 100644
--- a/include/dix.h
+++ b/include/dix.h
@@ -116,7 +116,9 @@ typedef struct _Client *ClientPtr; /* also in misc.h */
 
 typedef struct _WorkQueue	*WorkQueuePtr;
 
+#ifdef XPRINT
 extern ClientPtr requestingClient;
+#endif
 extern ClientPtr *clients;
 extern ClientPtr serverClient;
 extern int currentMaxClients;
commit 62cfe8863823c0994f20555cb35ee3bacb9e5225
Author: Adam Jackson <ajax at redhat.com>
Date:   Fri Feb 1 14:57:25 2008 +1100

    Redact all mention of PanoramiX from user strings.

diff --git a/Xext/panoramiX.c b/Xext/panoramiX.c
index 311a8e7..75277be 100644
--- a/Xext/panoramiX.c
+++ b/Xext/panoramiX.c
@@ -463,10 +463,8 @@ void PanoramiXExtensionInit(int argc, char *argv[])
 				ProcPanoramiXDispatch,
 				SProcPanoramiXDispatch, PanoramiXResetProc, 
 				StandardMinorOpcode);
-	if (!extEntry) {
-	    ErrorF("PanoramiXExtensionInit(): failed to AddExtension\n");
+	if (!extEntry)
 	    break;
- 	}
 
 	/*
 	 *	First make sure all the basic allocations succeed.  If not,
@@ -514,7 +512,7 @@ void PanoramiXExtensionInit(int argc, char *argv[])
 
     if (!success) {
 	noPanoramiXExtension = TRUE;
-	ErrorF("%s Extension failed to initialize\n", PANORAMIX_PROTOCOL_NAME);
+	ErrorF(PANORAMIX_PROTOCOL_NAME " extension failed to initialize\n");
 	return;
     }
   
@@ -604,14 +602,14 @@ Bool PanoramiXCreateConnectionBlock(void)
      */
 
     if(!PanoramiXNumDepths) {
-	ErrorF("PanoramiX error: Incompatible screens. No common visuals\n");
+	ErrorF("Xinerama error: No common visuals\n");
 	return FALSE;
     }
 
     for(i = 1; i < screenInfo.numScreens; i++) {
 	pScreen = screenInfo.screens[i];
 	if(pScreen->rootDepth != screenInfo.screens[0]->rootDepth) {
-	    ErrorF("PanoramiX error: Incompatible screens. Root window depths differ\n");
+	    ErrorF("Xinerama error: Root window depths differ\n");
 	    return FALSE;
 	}
 	if(pScreen->backingStoreSupport != screenInfo.screens[0]->backingStoreSupport)
commit eb8dc11d19dd0b5354de408578ab0cfb865df672
Author: Adam Jackson <ajax at redhat.com>
Date:   Thu Jan 31 21:45:14 2008 +1100

    Remove some MAX* #defines that never get used.

diff --git a/include/misc.h b/include/misc.h
index e6a5e9e..a1cbe86 100644
--- a/include/misc.h
+++ b/include/misc.h
@@ -87,10 +87,7 @@ extern unsigned long serverGeneration;
 #define MAXSCREENS	16
 #endif
 #define MAXCLIENTS	256
-#define MAXDITS		1
-#define MAXEXTENSIONS	128
 #define MAXFORMATS	8
-#define MAXVISUALS_PER_SCREEN 50
 
 typedef unsigned long PIXEL;
 typedef unsigned long ATOM;
commit 2ce35f6d45c3e1761d33b786520ff5ba56a3c518
Author: Adam Jackson <ajax at redhat.com>
Date:   Thu Jan 31 21:39:48 2008 +1100

    Simplify critical output flushing.

diff --git a/dix/dispatch.c b/dix/dispatch.c
index 3589fba..32efff7 100644
--- a/dix/dispatch.c
+++ b/dix/dispatch.c
@@ -424,10 +424,9 @@ Dispatch(void)
 	    while (!isItTimeToYield)
 	    {
 	        if (*icheck[0] != *icheck[1])
-		{
 		    ProcessInputEvents();
-		    FlushIfCriticalOutputPending();
-		}
+		
+		FlushIfCriticalOutputPending();
 #ifdef SMART_SCHEDULE
 		if (!SmartScheduleDisable && 
 		    (SmartScheduleTime - start_tick) >= SmartScheduleSlice)
@@ -483,9 +482,6 @@ Dispatch(void)
 					  client->errorValue, result);
 		    break;
 	        }
-#ifdef DAMAGEEXT
-		FlushIfCriticalOutputPending ();
-#endif
 	    }
 	    FlushAllOutput();
 #ifdef SMART_SCHEDULE
commit 3eaecdd66e791e0f3d86b23ce10be057ca44c044
Author: Adam Jackson <ajax at redhat.com>
Date:   Thu Jan 31 21:36:14 2008 +1100

    Disable Record by default.

diff --git a/configure.ac b/configure.ac
index 566ddcb..d8b78ea 100644
--- a/configure.ac
+++ b/configure.ac
@@ -526,7 +526,7 @@ AC_ARG_ENABLE(composite,      AS_HELP_STRING([--disable-composite], [Build Compo
 AC_ARG_ENABLE(mitshm,         AS_HELP_STRING([--disable-shm], [Build SHM extension (default: enabled)]), [MITSHM=$enableval], [MITSHM=yes])
 AC_ARG_ENABLE(xres,           AS_HELP_STRING([--disable-xres], [Build XRes extension (default: enabled)]), [RES=$enableval], [RES=yes])
 AC_ARG_ENABLE(xtrap,          AS_HELP_STRING([--disable-xtrap], [Build XTrap extension (default: enabled)]), [XTRAP=$enableval], [XTRAP=yes])
-AC_ARG_ENABLE(record,         AS_HELP_STRING([--disable-record], [Build Record extension (default: enabled)]), [RECORD=$enableval], [RECORD=yes])
+AC_ARG_ENABLE(record,         AS_HELP_STRING([--disable-record], [Build Record extension (default: disabled)]), [RECORD=$enableval], [RECORD=no])
 AC_ARG_ENABLE(xv,             AS_HELP_STRING([--disable-xv], [Build Xv extension (default: enabled)]), [XV=$enableval], [XV=yes])
 AC_ARG_ENABLE(xvmc,           AS_HELP_STRING([--disable-xvmc], [Build XvMC extension (default: enabled)]), [XVMC=$enableval], [XVMC=yes])
 AC_ARG_ENABLE(dga,            AS_HELP_STRING([--disable-dga], [Build DGA extension (default: auto)]), [DGA=$enableval], [DGA=auto])
commit aa5216e89797b600f382c04e3eaa657e808a5c3e
Author: Adam Jackson <ajax at redhat.com>
Date:   Thu Jan 31 12:05:08 2008 +1100

    Rip out useless indirection in the callback list management.

diff --git a/dix/dixutils.c b/dix/dixutils.c
index dd485d5..aaf5106 100644
--- a/dix/dixutils.c
+++ b/dix/dixutils.c
@@ -816,16 +816,8 @@ _DeleteCallbackList(
     *pcbl = NULL;
 }
 
-static CallbackFuncsRec default_cbfuncs =
-{
-    _AddCallback,
-    _DeleteCallback,
-    _CallCallbacks,
-    _DeleteCallbackList
-};
-
 static Bool
-CreateCallbackList(CallbackListPtr *pcbl, CallbackFuncsPtr cbfuncs)
+CreateCallbackList(CallbackListPtr *pcbl)
 {
     CallbackListPtr  cbl;
     int i;
@@ -833,7 +825,6 @@ CreateCallbackList(CallbackListPtr *pcbl, CallbackFuncsPtr cbfuncs)
     if (!pcbl) return FALSE;
     cbl = (CallbackListPtr) xalloc(sizeof(CallbackListRec));
     if (!cbl) return FALSE;
-    cbl->funcs = cbfuncs ? *cbfuncs : default_cbfuncs;
     cbl->inCallback = 0;
     cbl->deleted = FALSE;
     cbl->numDeleted = 0;
@@ -864,31 +855,31 @@ AddCallback(CallbackListPtr *pcbl, CallbackProcPtr callback, pointer data)
     if (!pcbl) return FALSE;
     if (!*pcbl)
     {	/* list hasn't been created yet; go create it */
-	if (!CreateCallbackList(pcbl, (CallbackFuncsPtr)NULL))
+	if (!CreateCallbackList(pcbl))
 	    return FALSE;
     }
-    return ((*(*pcbl)->funcs.AddCallback) (pcbl, callback, data));
+    return _AddCallback(pcbl, callback, data);
 }
 
 _X_EXPORT Bool 
 DeleteCallback(CallbackListPtr *pcbl, CallbackProcPtr callback, pointer data)
 {
     if (!pcbl || !*pcbl) return FALSE;
-    return ((*(*pcbl)->funcs.DeleteCallback) (pcbl, callback, data));
+    return _DeleteCallback(pcbl, callback, data);
 }
 
 void 
 CallCallbacks(CallbackListPtr *pcbl, pointer call_data)
 {
     if (!pcbl || !*pcbl) return;
-    (*(*pcbl)->funcs.CallCallbacks) (pcbl, call_data);
+    _CallCallbacks(pcbl, call_data);
 }
 
 void
 DeleteCallbackList(CallbackListPtr *pcbl)
 {
     if (!pcbl || !*pcbl) return;
-    (*(*pcbl)->funcs.DeleteCallbackList) (pcbl);
+    _DeleteCallbackList(pcbl);
 }
 
 void 
diff --git a/include/dix.h b/include/dix.h
index 8cfbbc4..ec9806a 100644
--- a/include/dix.h
+++ b/include/dix.h
@@ -498,25 +498,6 @@ typedef struct _CallbackList *CallbackListPtr; /* also in misc.h */
 typedef void (*CallbackProcPtr) (
     CallbackListPtr *, pointer, pointer);
 
-typedef Bool (*AddCallbackProcPtr) (
-    CallbackListPtr *, CallbackProcPtr, pointer);
-
-typedef Bool (*DeleteCallbackProcPtr) (
-    CallbackListPtr *, CallbackProcPtr, pointer);
-
-typedef void (*CallCallbacksProcPtr) (
-    CallbackListPtr *, pointer);
-
-typedef void (*DeleteCallbackListProcPtr) (
-    CallbackListPtr *);
-
-typedef struct _CallbackProcs {
-    AddCallbackProcPtr		AddCallback;
-    DeleteCallbackProcPtr	DeleteCallback;
-    CallCallbacksProcPtr	CallCallbacks;
-    DeleteCallbackListProcPtr	DeleteCallbackList;
-} CallbackFuncsRec, *CallbackFuncsPtr;
-
 extern Bool AddCallback(
     CallbackListPtr * /*pcbl*/,
     CallbackProcPtr /*callback*/,
diff --git a/include/dixstruct.h b/include/dixstruct.h
index cbeac48..d44b9cf 100644
--- a/include/dixstruct.h
+++ b/include/dixstruct.h
@@ -187,7 +187,6 @@ typedef struct _CallbackRec {
 } CallbackRec, *CallbackPtr;
 
 typedef struct _CallbackList {
-  CallbackFuncsRec funcs;
   int inCallback;
   Bool deleted;
   int numDeleted;


More information about the xorg-commit mailing list