Demolish now-unused loader functions.

This commit is contained in:
Adam Jackson 2006-06-07 14:17:31 -04:00
parent f90761b06e
commit 21ebcfd702
2 changed files with 0 additions and 170 deletions

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
*/