Browse Source

guard prlimit, reported by Lance Fredrickson

Waldemar Brodkorb 2 years ago
parent
commit
118e211269

+ 5 - 0
libc/sysdeps/linux/common/bits/kernel-features.h

@@ -490,6 +490,11 @@
 # define __ASSUME_FALLOCATE 1
 #endif
 
+/* prlimit64 is available in 2.6.36.  */
+#if __LINUX_KERNEL_VERSION >= 0x020624
+# define __ASSUME_PRLIMIT64    1
+#endif
+
 /* getcpu is a syscall for x86-64 since 3.1.  */
 #if defined __x86_64__ && __LINUX_KERNEL_VERSION >= 0x030100
 # define __ASSUME_GETCPU_SYSCALL        1

+ 3 - 0
libc/sysdeps/linux/common/prlimit.c

@@ -17,7 +17,9 @@
 
 #include <sys/resource.h>
 #include <sysdep.h>
+#include <bits/kernel-features.h>
 
+#if defined __ASSUME_PRLIMIT64
 int
 prlimit (__pid_t pid, enum __rlimit_resource resource,
 	     const struct rlimit *new_rlimit, struct rlimit *old_rlimit)
@@ -25,3 +27,4 @@ prlimit (__pid_t pid, enum __rlimit_resource resource,
   return INLINE_SYSCALL (prlimit64, 4, pid, resource, new_rlimit,
 			      old_rlimit);
 }
+#endif