[xorg-commit-diffs] xc/programs/Xserver/hw/xfree86/loader dixsym.c, 1.1.4.5, 1.1.4.6 elfloader.c, 1.1.4.4, 1.1.4.5 extsym.c, 1.1.4.3, 1.1.4.4 loadmod.c, 1.1.4.1, 1.1.4.2 misym.c, 1.1.4.2, 1.1.4.3

Egbert Eich xorg-commit at pdx.freedesktop.org
Thu Apr 15 03:17:15 PDT 2004


Committed by: eich

Update of /cvs/xorg/xc/programs/Xserver/hw/xfree86/loader
In directory pdx:/home/eich/tstbuild/xc/programs/Xserver/hw/xfree86/loader

Modified Files:
      Tag: XORG-CURRENT
	dixsym.c elfloader.c extsym.c loadmod.c misym.c 
Log Message:
2004-04-15  Egbert Eich  <eich at freedesktop.org>
        Merged changes from RELEASE-1 branch
	


Index: dixsym.c
===================================================================
RCS file: /cvs/xorg/xc/programs/Xserver/hw/xfree86/loader/dixsym.c,v
retrieving revision 1.1.4.5
retrieving revision 1.1.4.6
diff -u -d -r1.1.4.5 -r1.1.4.6
--- a/dixsym.c	5 Mar 2004 13:40:51 -0000	1.1.4.5
+++ b/dixsym.c	15 Apr 2004 10:17:09 -0000	1.1.4.6
@@ -171,7 +171,7 @@
     SYMVAR(EventCallback)
     SYMVAR(inputInfo)
     SYMVAR(SetCriticalEvent)
-#ifdef XINERAMA
+#ifdef PANORAMIX
     SYMVAR(XineramaGetCursorScreen)
 #endif
     /* property.c */

Index: elfloader.c
===================================================================
RCS file: /cvs/xorg/xc/programs/Xserver/hw/xfree86/loader/elfloader.c,v
retrieving revision 1.1.4.4
retrieving revision 1.1.4.5
diff -u -d -r1.1.4.4 -r1.1.4.5
--- a/elfloader.c	30 Mar 2004 14:23:14 -0000	1.1.4.4
+++ b/elfloader.c	15 Apr 2004 10:17:09 -0000	1.1.4.5
@@ -922,7 +922,7 @@
 	    ErrorF("ELFCreateGOT() Unable to reallocate memory!!!!\n");
 	    return FALSE;
 	}
-#   if defined(linux) && defined(__ia64__) || defined(__OpenBSD__)
+#   if defined(linux) || defined(__OpenBSD__)
 	{
 	    unsigned long page_size = getpagesize();
 	    unsigned long round;
@@ -1097,6 +1097,18 @@
 	ErrorF("ELFCreatePLT() Unable to allocate memory!!!!\n");
 	return;
     }
+#   if defined(linux) || defined(__OpenBSD__)
+    {
+	unsigned long page_size = getpagesize();
+	unsigned long round;
+
+	round = (unsigned long)elffile->plt & (page_size - 1);
+	mprotect(elffile->plt - round,
+		 (elffile->pltsize + round + page_size - 1) & ~(page_size - 1),
+		 PROT_READ | PROT_WRITE | PROT_EXEC);
+    }
+#   endif
+									      
     elffile->sections[elffile->pltndx].sh_size = elffile->pltsize;
 # ifdef ELFDEBUG
     ELFDEBUG("ELFCreatePLT: PLT address %lx\n", elffile->plt);
@@ -2763,10 +2775,16 @@
 	elffile->lsection[j].size = SecSize(i);
 	elffile->lsection[j].flags = flags;
 	switch (SecType(i)) {
-#ifdef __OpenBSD__
+#if defined(linux) || defined(__OpenBSD__)
 	case SHT_PROGBITS:
-	    mprotect(elffile->lsection[j].saddr, SecSize(i),
-		     PROT_READ | PROT_WRITE | PROT_EXEC);
+	    {
+		unsigned long page_size = getpagesize();
+		unsigned long round;
+
+		round = (unsigned long)elffile->lsection[j].saddr & (page_size -1);
+		mprotect( (char *)elffile->lsection[j].saddr - round,
+			 SecSize(i) + round, PROT_READ | PROT_WRITE | PROT_EXEC);
+	    }
 	    break;
 #endif
 	case SHT_SYMTAB:
@@ -2961,7 +2979,7 @@
 	ErrorF("Unable to allocate ELF sections\n");
 	return NULL;
     }
-#  if defined(linux) && defined(__ia64__) || defined(__OpenBSD__)
+#  if defined(linux) || defined(__OpenBSD__)
     {
 	unsigned long page_size = getpagesize();
 	unsigned long round;

Index: extsym.c
===================================================================
RCS file: /cvs/xorg/xc/programs/Xserver/hw/xfree86/loader/extsym.c,v
retrieving revision 1.1.4.3
retrieving revision 1.1.4.4
diff -u -d -r1.1.4.3 -r1.1.4.4
--- a/extsym.c	25 Feb 2004 21:46:53 -0000	1.1.4.3
+++ b/extsym.c	15 Apr 2004 10:17:09 -0000	1.1.4.4
@@ -28,7 +28,7 @@
 #include "resource.h"
 #include "sym.h"
 #include "misc.h"
-#ifdef XINERAMA
+#ifdef PANORAMIX
 #include "panoramiX.h"
 #endif
 #include "sleepuntil.h"
@@ -39,7 +39,7 @@
 extern RESTYPE ShmSegType, ShmPixType;
 #endif
 
-#ifdef XINERAMA
+#ifdef PANORAMIX
 extern Bool noPanoramiXExtension;
 extern int PanoramiXNumScreens;
 extern PanoramiXData *panoramiXdataPtr;
@@ -63,7 +63,7 @@
     SYMVAR(ShmSegType)
 #endif
 
-#ifdef XINERAMA
+#ifdef PANORAMIX
     SYMFUNC(XineramaRegisterConnectionBlockCallback)
     SYMFUNC(XineramaDeleteResource)
     SYMVAR(noPanoramiXExtension)

Index: loadmod.c
===================================================================
RCS file: /cvs/xorg/xc/programs/Xserver/hw/xfree86/loader/loadmod.c,v
retrieving revision 1.1.4.1
retrieving revision 1.1.4.2
diff -u -d -r1.1.4.1 -r1.1.4.2
--- a/loadmod.c	26 Nov 2003 22:49:01 -0000	1.1.4.1
+++ b/loadmod.c	15 Apr 2004 10:17:09 -0000	1.1.4.2
@@ -86,7 +86,7 @@
 static void RemoveChild(ModuleDescPtr);
 
 ModuleVersions LoaderVersionInfo = {
-    XF86_VERSION_CURRENT,
+    XORG_VERSION_CURRENT,
     ABI_ANSIC_VERSION,
     ABI_VIDEODRV_VERSION,
     ABI_XINPUT_VERSION,

Index: misym.c
===================================================================
RCS file: /cvs/xorg/xc/programs/Xserver/hw/xfree86/loader/misym.c,v
retrieving revision 1.1.4.2
retrieving revision 1.1.4.3
diff -u -d -r1.1.4.2 -r1.1.4.3
--- a/misym.c	18 Dec 2003 19:29:14 -0000	1.1.4.2
+++ b/misym.c	15 Apr 2004 10:17:09 -0000	1.1.4.3
@@ -65,9 +65,9 @@
 #include "mifillarc.h"
 #include "micmap.h"
 #include "mioverlay.h"
-#ifdef XINERAMA
+#ifdef PANORAMIX
 #include "resource.h"
-#include "xinerama.h"
+#include "panoramiX.h"
 #endif
 #ifdef RENDER
 #include "mipict.h"




More information about the xorg-commit-diffs mailing list