diff options
Diffstat (limited to 'sysdeps')
-rw-r--r-- | sysdeps/arm/dl-machine.h | 12 | ||||
-rw-r--r-- | sysdeps/generic/dl-sysdep.c | 2 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/bits/statvfs.h | 4 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/fstatvfs.c | 2 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/netinet/ip.h | 6 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/sys/mount.h | 4 |
6 files changed, 20 insertions, 10 deletions
diff --git a/sysdeps/arm/dl-machine.h b/sysdeps/arm/dl-machine.h index 66b69d02db..e6a686e626 100644 --- a/sysdeps/arm/dl-machine.h +++ b/sysdeps/arm/dl-machine.h @@ -308,10 +308,10 @@ _dl_start_user: /* Nonzero iff TYPE describes relocation of a PLT entry, so PLT entries should not be allowed to define the value. */ -#define elf_machine_lookup_noplt_p(type) ((type) == R_ARM_JMP_SLOT) +#define elf_machine_lookup_noplt_p(type) ((type) == R_ARM_JUMP_SLOT) /* A reloc type used for ld.so cmdline arg lookups to reject PLT entries. */ -#define ELF_MACHINE_JMP_SLOT R_ARM_JMP_SLOT +#define ELF_MACHINE_JMP_SLOT R_ARM_JUMP_SLOT /* The i386 never uses Elf32_Rela relocations. */ #define ELF_MACHINE_NO_RELA 1 @@ -397,7 +397,7 @@ elf_machine_rel (struct link_map *map, const Elf32_Rel *reloc, refsym->st_size)); break; case R_ARM_GLOB_DAT: - case R_ARM_JMP_SLOT: + case R_ARM_JUMP_SLOT: #if 0 #define _HEX(i) for (j=28; j>=0; j-=4) b[7-j/4]="0123456789abcdef"[((int)i>>j)&15]; @@ -429,7 +429,7 @@ __asm__ (" mov r0, #2; mov r1, %0; mov r2, #2; swi 0x00900004; " #endif *reloc_addr = value; break; - case R_ARM_32: + case R_ARM_ABS32: { #ifndef RTLD_BOOTSTRAP /* This is defined in rtld.c, but nowhere in the static @@ -450,7 +450,7 @@ __asm__ (" mov r0, #2; mov r1, %0; mov r2, #2; swi 0x00900004; " *reloc_addr += value; break; } - case R_ARM_PC26: + case R_ARM_PC24: *reloc_addr += (value - (Elf32_Addr) reloc_addr); break; default: @@ -466,7 +466,7 @@ elf_machine_lazy_rel (struct link_map *map, const Elf32_Rel *reloc) Elf32_Addr *const reloc_addr = (void *) (map->l_addr + reloc->r_offset); switch (ELF32_R_TYPE (reloc->r_info)) { - case R_ARM_JMP_SLOT: + case R_ARM_JUMP_SLOT: *reloc_addr += map->l_addr; break; default: diff --git a/sysdeps/generic/dl-sysdep.c b/sysdeps/generic/dl-sysdep.c index 90beb8f269..758fb754e7 100644 --- a/sysdeps/generic/dl-sysdep.c +++ b/sysdeps/generic/dl-sysdep.c @@ -47,6 +47,8 @@ ElfW(Addr) _dl_base_addr; int __libc_enable_secure; int __libc_multiple_libcs; /* Defining this here avoids the inclusion of init-first. */ +/* This variable contains the lowest stack address ever used. */ +void *__libc_stack_end; static ElfW(auxv_t) *_dl_auxv; unsigned long int _dl_hwcap_mask = HWCAP_IMPORTANT; diff --git a/sysdeps/unix/sysv/linux/bits/statvfs.h b/sysdeps/unix/sysv/linux/bits/statvfs.h index 85cdc9857b..fc63806848 100644 --- a/sysdeps/unix/sysv/linux/bits/statvfs.h +++ b/sysdeps/unix/sysv/linux/bits/statvfs.h @@ -87,6 +87,8 @@ enum #define ST_APPEND ST_APPEND ST_IMMUTABLE = 512, /* Immutable file. */ #define ST_IMMUTABLE ST_IMMUTABLE - ST_NOATIME = 1024 /* Do not update access times. */ + ST_NOATIME = 1024, /* Do not update access times. */ #define ST_NOATIME ST_NOATIME + ST_NODIRATIME /* Do not update directory access times. */ +#define ST_NODIRATIME ST_NODIRATIME }; diff --git a/sysdeps/unix/sysv/linux/fstatvfs.c b/sysdeps/unix/sysv/linux/fstatvfs.c index ef28bc693b..de926f49c4 100644 --- a/sysdeps/unix/sysv/linux/fstatvfs.c +++ b/sysdeps/unix/sysv/linux/fstatvfs.c @@ -155,6 +155,8 @@ fstatvfs (int fd, struct statvfs *buf) buf->f_flag |= ST_MANDLOCK; else if (strcmp (opt, "noatime") == 0) buf->f_flag |= ST_NOATIME; + else if (strcmp (opt, "nodiratime") == 0) + buf->f_flag |= ST_NODIRATIME; /* We can stop looking for more entries. */ break; diff --git a/sysdeps/unix/sysv/linux/netinet/ip.h b/sysdeps/unix/sysv/linux/netinet/ip.h index cb27ebf8aa..1add1b2b59 100644 --- a/sysdeps/unix/sysv/linux/netinet/ip.h +++ b/sysdeps/unix/sysv/linux/netinet/ip.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991, 92, 93, 95, 96, 97 Free Software Foundation, Inc. +/* Copyright (C) 1991, 92, 93, 95, 96, 97, 98 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -19,7 +19,7 @@ #ifndef __NETINET_IP_H #define __NETINET_IP_H 1 -#include <sys/cdefs.h> +#include <features.h> #include <sys/types.h> #include <netinet/in.h> @@ -60,7 +60,9 @@ struct ip_options u_int8_t router_alert; u_int8_t __pad1; u_int8_t __pad2; +#ifdef __GNUC__ u_int8_t __data[0]; +#endif }; struct iphdr diff --git a/sysdeps/unix/sysv/linux/sys/mount.h b/sysdeps/unix/sysv/linux/sys/mount.h index c9ace10822..589ecbc1c5 100644 --- a/sysdeps/unix/sysv/linux/sys/mount.h +++ b/sysdeps/unix/sysv/linux/sys/mount.h @@ -53,8 +53,10 @@ enum #define S_APPEND S_APPEND S_IMMUTABLE = 512, /* Immutable file. */ #define S_IMMUTABLE S_IMMUTABLE - MS_NOATIME = 1024 /* Do not update access times. */ + MS_NOATIME = 1024, /* Do not update access times. */ #define MS_NOATIME MS_NOATIME + MS_NODIRATIME = 2048 /* Do not update directory access times. */ +#define MS_NODIRATIME MS_NODIRATIME }; /* Flags that can be altered by MS_REMOUNT */ |