glibc/sysdeps
Aurelien Jarno 0d0bc784ca Alpha: Add wrappers to get/setrlimit64 to fix RLIM64_INFINITY constant [BZ #22648]
RLIM64_INFINITY was supposed to be a glibc convention rather than
anything seen by the kernel, but it ended being passed to the kernel
through the prlimit64 syscall.

* On the kernel side, the value is defined for the prlimit64 syscall for
  all architectures in include/uapi/linux/resource.h:

  #define RLIM64_INFINITY           (~0ULL)

* On the kernel side, the value is defined for getrlimit and setrlimit
  in arch/alpha/include/uapi/asm/resource.h

  #define RLIM_INFINITY            0x7ffffffffffffffful

* On the GNU libc side, the value is defined in
  sysdeps/unix/sysv/linux/alpha/bits/resource.h:

  # define RLIM64_INFINITY 0x7fffffffffffffffLL

This was not an issue until the getrlimit and setrlimit glibc functions
have been changed in commit 045c13d185 ("Consolidate Linux setrlimit and
getrlimit implementation") to use the prlimit64 syscall instead of the
getrlimit and setrlimit ones.

This patch fixes that by adding a wrapper to fix the value passed to or
received from the kernel, before or after calling the prlimit64 syscall.

Changelog:
	[BZ #22648]
	* sysdeps/unix/sysv/linux/alpha/getrlimit64.c: New file.
	* sysdeps/unix/sysv/linux/alpha/setrlimit64.c: Ditto.
2018-01-05 20:34:10 +01:00
..
aarch64 Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
alpha alpha: Remove s_trunc{f} implementation (BZ#22666) 2018-01-04 17:49:17 -02:00
arm Update ARM libm-test-ulps. 2018-01-02 18:37:06 +00:00
generic Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
gnu Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
hppa Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
i386 Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
ia64 Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
ieee754 Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
init_array Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
m68k Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
mach Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
microblaze Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
mips Update MIPS libm-test-ulps. 2018-01-02 21:55:15 +00:00
nios2 Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
nptl Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
posix Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
powerpc Update powerpc-nofpu libm-test-ulps. 2018-01-02 18:38:45 +00:00
pthread Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
s390 Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
sh Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
sparc Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
tile Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
unix Alpha: Add wrappers to get/setrlimit64 to fix RLIM64_INFINITY constant [BZ #22648] 2018-01-05 20:34:10 +01:00
wordsize-32 Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
wordsize-64 Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
x86 Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
x86_64 Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00