Merge branch 'master' of git+ssh://git.freedesktop.org/git/xorg/xserver

This commit is contained in:
Ian Romanick 2006-06-07 14:09:12 -07:00
commit bc05158a5a
11 changed files with 20 additions and 177 deletions

7
.gitignore vendored Normal file
View File

@ -0,0 +1,7 @@
Makefile
Makefile.in
.deps
.libs
*.lo
*.la
*.o

View File

@ -1049,7 +1049,6 @@ ProcXineramaIsActive(ClientPtr client)
{
/* The following hack fools clients into thinking that Xinerama
* is disabled even though it is not. */
extern Bool PanoramiXExtensionDisabledHack;
rep.state = !noPanoramiXExtension && !PanoramiXExtensionDisabledHack;
}
#else

View File

@ -104,7 +104,7 @@ typedef struct {
} xevieKeycQueueRec, *xevieKeycQueuePtr;
#define KEYC_QUEUE_SIZE 100
xevieKeycQueueRec keycq[KEYC_QUEUE_SIZE] = {0, NULL};
xevieKeycQueueRec keycq[KEYC_QUEUE_SIZE] = {{0, NULL}};
static int keycqHead = 0, keycqTail = 0;
static int ProcDispatch (ClientPtr), SProcDispatch (ClientPtr);
@ -165,7 +165,6 @@ void ResetProc (ExtensionEntry *extEntry)
static
int ProcQueryVersion (register ClientPtr client)
{
REQUEST (xXevieQueryVersionReq);
xXevieQueryVersionReply rep;
REQUEST_SIZE_MATCH (xXevieQueryVersionReq);
@ -181,7 +180,6 @@ int ProcQueryVersion (register ClientPtr client)
static
int ProcStart (register ClientPtr client)
{
REQUEST (xXevieStartReq);
xXevieStartReply rep;
REQUEST_SIZE_MATCH (xXevieStartReq);

View File

@ -66,7 +66,9 @@ SOFTWARE.
#include "cursorstr.h"
#include "dixstruct.h"
#include "site.h"
#ifndef XKB_IN_SERVER
#define XKB_IN_SERVER
#endif
#ifdef XKB
#include <X11/extensions/XKBsrv.h>
#endif

View File

@ -115,7 +115,9 @@ int ProcInitialConnection();
#include <X11/extensions/Xagsrv.h>
#endif
#ifdef XKB
#ifndef XKB_IN_SERVER
#define XKB_IN_SERVER
#endif
#include "inputstr.h"
#include <X11/extensions/XKBsrv.h>
#endif

View File

@ -78,9 +78,6 @@ extern void GlxSetVisualConfigs(
);
#endif /* GLXEXT */
extern void SetVendorRelease(int release); /* in dix/main.c */
extern void SetVendorString(char *string); /* in dix/main.c */
/* Global variables available to all Xserver/hw/dmx routines. */
int dmxNumScreens;
DMXScreenInfo *dmxScreens;

View File

@ -129,6 +129,7 @@ typedef enum {
/* built-in mode - configure CRTC and clock */
# define M_T_DEFAULT 0x10 /* (VESA) default modes */
# define M_T_USERDEF 0x20 /* One of the modes from the config file */
# define M_T_EDID 0x40 /* Mode from the EDID info from the monitor */
/* Video mode */
typedef struct _DisplayModeRec {

View File

@ -367,169 +367,6 @@ _GetModuleType(int fd, long offset)
return LD_ELFDLOBJECT;
}
static int offsetbias = 0; /* offset into archive */
/*
* _LoaderFileToMem() loads the contents of a file into memory using
* the most efficient method for a platform.
*/
void *
_LoaderFileToMem(int fd, unsigned long offset, int size, char *label)
{
#ifdef UseMMAP
unsigned long ret;
# ifdef MmapPageAlign
unsigned long pagesize;
unsigned long new_size;
unsigned long new_off;
unsigned long new_off_bias;
# endif
# define MMAP_PROT (PROT_READ|PROT_WRITE|PROT_EXEC)
# ifdef DEBUGMEM
ErrorF("_LoaderFileToMem(%d,%u(%u),%d,%s)", fd, offset, offsetbias, size,
label);
# endif
# ifdef MmapPageAlign
pagesize = getpagesize();
new_size = (size + pagesize - 1) / pagesize;
new_size *= pagesize;
new_off = (offset + offsetbias) / pagesize;
new_off *= pagesize;
new_off_bias = (offset + offsetbias) - new_off;
if ((new_off_bias + size) > new_size)
new_size += pagesize;
ret = (unsigned long)mmap(0, new_size, MMAP_PROT, MAP_PRIVATE
# ifdef __amd64__
| MAP_32BIT
# endif
, fd, new_off);
if (ret == -1)
FatalError("mmap() failed: %s\n", strerror(errno));
return (void *)(ret + new_off_bias);
# else
ret = (unsigned long)mmap(0, size, MMAP_PROT, MAP_PRIVATE
# ifdef __amd64__
| MAP_32BIT
# endif
, fd, offset + offsetbias);
if (ret == -1)
FatalError("mmap() failed: %s\n", strerror(errno));
return (void *)ret;
# endif
#else
char *ptr;
# ifdef DEBUGMEM
ErrorF("_LoaderFileToMem(%d,%u(%u),%d,%s)", fd, offset, offsetbias, size,
label);
# endif
if (size == 0) {
# ifdef DEBUGMEM
ErrorF("=NULL\n", ptr);
# endif
return NULL;
}
# ifndef __UNIXOS2__
if ((ptr = xf86loadercalloc(size, 1)) == NULL)
FatalError("_LoaderFileToMem() malloc failed\n");
# else
if ((ptr = os2ldcalloc(size, 1)) == NULL)
FatalError("_LoaderFileToMem() malloc failed\n");
# endif
# if defined(linux) && defined(__ia64__)
{
unsigned long page_size = getpagesize();
unsigned long round;
round = (unsigned long)ptr & (page_size - 1);
mprotect(ptr - round,
(size + round + page_size - 1) & ~(page_size - 1),
PROT_READ | PROT_WRITE | PROT_EXEC);
}
# endif
if (lseek(fd, offset + offsetbias, SEEK_SET) < 0)
FatalError("\n_LoaderFileToMem() lseek() failed: %s\n",
strerror(errno));
if (read(fd, ptr, size) != size)
FatalError("\n_LoaderFileToMem() read() failed: %s\n",
strerror(errno));
# if (defined(linux) || defined(__NetBSD__) || defined(__OpenBSD__) \
|| defined(__FreeBSD__)) && defined(__powerpc__)
/*
* Keep the instruction cache in sync with changes in the
* main memory.
*/
{
int i;
for (i = 0; i < size; i += 16)
ppc_flush_icache(ptr + i);
ppc_flush_icache(ptr + size - 1);
}
# endif
# ifdef DEBUGMEM
ErrorF("=%lx\n", ptr);
# endif
return (void *)ptr;
#endif
}
/*
* _LoaderFreeFileMem() free the memory in which a file was loaded.
*/
void
_LoaderFreeFileMem(void *addr, int size)
{
#if defined (UseMMAP) && defined (MmapPageAlign)
unsigned long pagesize = getpagesize();
memType i_addr = (memType) addr;
unsigned long new_size;
#endif
#ifdef DEBUGMEM
ErrorF("_LoaderFreeFileMem(%x,%d)\n", addr, size);
#endif
#ifdef UseMMAP
# if defined (MmapPageAlign)
i_addr /= pagesize;
i_addr *= pagesize;
new_size = (size + pagesize - 1) / pagesize;
new_size *= pagesize;
if (((memType) addr - i_addr + size) > new_size)
new_size += pagesize;
munmap((void *)i_addr, new_size);
# else
munmap((void *)addr, size);
# endif
#else
if (size == 0)
return;
xf86loaderfree(addr);
#endif
return;
}
int
_LoaderFileRead(int fd, unsigned int offset, void *buf, int size)
{
if (lseek(fd, offset + offsetbias, SEEK_SET) < 0)
FatalError("_LoaderFileRead() lseek() failed: %s\n", strerror(errno));
if (read(fd, buf, size) != size)
FatalError("_LoaderFileRead() read() failed: %s\n", strerror(errno));
return size;
}
static loaderPtr listHead = (loaderPtr) 0;
static loaderPtr

View File

@ -235,13 +235,6 @@ int _LoaderAddressToSection(const unsigned long, const char **,
int LoaderOpen(const char *, const char *, int, int *, int *, int *, int);
int LoaderHandleOpen(int);
/*
* File interface functions
*/
void *_LoaderFileToMem(int fd, unsigned long offset, int size, char *label);
void _LoaderFreeFileMem(void *addr, int size);
int _LoaderFileRead(int fd, unsigned int offset, void *addr, int size);
/*
* object to name lookup routines
*/

View File

@ -516,6 +516,12 @@ extern void FreeAllAtoms(void);
extern void InitAtoms(void);
/* main.c */
extern void SetVendorRelease(int release);
extern void SetVendorString(char *string);
/* events.c */
extern void SetMaskForEvent(

View File

@ -50,6 +50,7 @@ extern Bool PanoramiXMapped;
extern Bool PanoramiXVisibilityNotifySent;
extern Bool PanoramiXWindowExposureSent;
extern Bool PanoramiXOneExposeRequest;
extern Bool PanoramiXExtensionDisabledHack;
#endif
#ifdef BIGREQS