Correct __ASSUME_PRLIMIT64 for hppa/microblaze/sh (bug 17779)

Message ID alpine.DEB.2.10.1412311652210.26199@digraph.polyomino.org.uk
State Committed
Headers

Commit Message

Joseph Myers Dec. 31, 2014, 4:54 p.m. UTC
  __ASSUME_PRLIMIT64 is defined in kernel-features.h for kernels 2.6.36
and later, but hppa, microblaze and sh did not add the prlimit64
syscall until 2.6.37.  This patch adds corresponding undefines of
__ASSUME_PRLIMIT64 to those architectures' kernel-features.h files.

(This concludes the kernel-features.h fixes arising out of the review
- limited to macros defined in the architecture-independent
kernel-features.h file - I did in connection with the move to 2.6.32
minimum kernel version.  For that subset of macros - I didn't check
any purely architecture-specific macros - I think they are now defined
for the correct kernel versions on each architecture after this
patch.)

Untested.

2014-12-31  Joseph Myers  <joseph@codesourcery.com>

	[BZ #17779]
	* sysdeps/unix/sysv/linux/hppa/kernel-features.h
	[__LINUX_KERNEL_VERSION < 0x020625] (__ASSUME_PRLIMIT64):
	Undefine.
	* sysdeps/unix/sysv/linux/microblaze/kernel-features.h
	[__LINUX_KERNEL_VERSION < 0x020625] (__ASSUME_PRLIMIT64):
	Likewise.
	* sysdeps/unix/sysv/linux/sh/kernel-features.h
	[__LINUX_KERNEL_VERSION < 0x020625] (__ASSUME_PRLIMIT64):
	Likewise.
  

Comments

Kaz Kojima Jan. 1, 2015, 10:12 a.m. UTC | #1
Joseph Myers <joseph@codesourcery.com> wrote:
> __ASSUME_PRLIMIT64 is defined in kernel-features.h for kernels 2.6.36
> and later, but hppa, microblaze and sh did not add the prlimit64
> syscall until 2.6.37.  This patch adds corresponding undefines of
> __ASSUME_PRLIMIT64 to those architectures' kernel-features.h files.
> 
> (This concludes the kernel-features.h fixes arising out of the review
> - limited to macros defined in the architecture-independent
> kernel-features.h file - I did in connection with the move to 2.6.32
> minimum kernel version.  For that subset of macros - I didn't check
> any purely architecture-specific macros - I think they are now defined
> for the correct kernel versions on each architecture after this
> patch.)
> 
> Untested.
> 
> 2014-12-31  Joseph Myers  <joseph@codesourcery.com>
> 
> 	[BZ #17779]
> 	* sysdeps/unix/sysv/linux/hppa/kernel-features.h
> 	[__LINUX_KERNEL_VERSION < 0x020625] (__ASSUME_PRLIMIT64):
> 	Undefine.
> 	* sysdeps/unix/sysv/linux/microblaze/kernel-features.h
> 	[__LINUX_KERNEL_VERSION < 0x020625] (__ASSUME_PRLIMIT64):
> 	Likewise.
> 	* sysdeps/unix/sysv/linux/sh/kernel-features.h
> 	[__LINUX_KERNEL_VERSION < 0x020625] (__ASSUME_PRLIMIT64):
> 	Likewise.

Fine on SH.  Tested with 2.6.32 and 3.14.0 kernels.

Regards,
	kaz
  
Joseph Myers Jan. 5, 2015, 2:26 p.m. UTC | #2
Ping.  This patch 
<https://sourceware.org/ml/libc-alpha/2014-12/msg01002.html> is pending 
review for hppa and microblaze.
  
David Holsgrove Jan. 9, 2015, 7:55 a.m. UTC | #3
On 6 January 2015 at 00:26, Joseph Myers <joseph@codesourcery.com> wrote:
> Ping.  This patch
> <https://sourceware.org/ml/libc-alpha/2014-12/msg01002.html> is pending
> review for hppa and microblaze.
>
> --
> Joseph S. Myers
> joseph@codesourcery.com

OK for MicroBlaze, thanks again Joseph,

David
  
Joseph Myers Jan. 12, 2015, 9:10 p.m. UTC | #4
Ping^2.  This patch 
<https://sourceware.org/ml/libc-alpha/2014-12/msg01002.html> is still 
pending review for hppa.
  
Joseph Myers Jan. 21, 2015, 1:19 a.m. UTC | #5
Ping^3.  This patch 
<https://sourceware.org/ml/libc-alpha/2014-12/msg01002.html> is still 
pending review for hppa (and I think it's safe enough for the freeze).
  
Joseph Myers Jan. 27, 2015, 1:49 p.m. UTC | #6
Ping^4.  This patch 
<https://sourceware.org/ml/libc-alpha/2014-12/msg01002.html> is still 
pending review for hppa (now for 2.22).
  
Joseph Myers Feb. 2, 2015, 4:45 p.m. UTC | #7
Ping^5.  This patch 
<https://sourceware.org/ml/libc-alpha/2014-12/msg01002.html> is still 
pending review for hppa (now for 2.22).
  
Joseph Myers Feb. 9, 2015, 4:41 p.m. UTC | #8
Ping^6.  This patch 
<https://sourceware.org/ml/libc-alpha/2014-12/msg01002.html> is still 
pending review for hppa.
  
Joseph Myers Feb. 16, 2015, 3:31 p.m. UTC | #9
Ping^7.  This patch 
<https://sourceware.org/ml/libc-alpha/2014-12/msg01002.html> is still 
pending review for hppa.
  
Joseph Myers Feb. 24, 2015, 4:21 p.m. UTC | #10
Ping^8.  This patch 
<https://sourceware.org/ml/libc-alpha/2014-12/msg01002.html> is still 
pending review for hppa.
  
Mike Frysinger March 2, 2015, 3:15 a.m. UTC | #11
On 24 Feb 2015 16:21, Joseph Myers wrote:
> Ping^8.  This patch 
> <https://sourceware.org/ml/libc-alpha/2014-12/msg01002.html> is still 
> pending review for hppa.

lgtm
-mike
  

Patch

diff --git a/sysdeps/unix/sysv/linux/hppa/kernel-features.h b/sysdeps/unix/sysv/linux/hppa/kernel-features.h
index cf0c574..40d9c9f 100644
--- a/sysdeps/unix/sysv/linux/hppa/kernel-features.h
+++ b/sysdeps/unix/sysv/linux/hppa/kernel-features.h
@@ -38,3 +38,8 @@ 
 #endif
 
 #include_next <kernel-features.h>
+
+/* The prlimit64 syscall was added for PA in 2.6.37.  */
+#if __LINUX_KERNEL_VERSION < 0x020625
+# undef __ASSUME_PRLIMIT64
+#endif
diff --git a/sysdeps/unix/sysv/linux/microblaze/kernel-features.h b/sysdeps/unix/sysv/linux/microblaze/kernel-features.h
index 34b0521..6f988b6 100644
--- a/sysdeps/unix/sysv/linux/microblaze/kernel-features.h
+++ b/sysdeps/unix/sysv/linux/microblaze/kernel-features.h
@@ -45,6 +45,11 @@ 
 # undef __ASSUME_SET_ROBUST_LIST
 #endif
 
+/* The prlimit64 syscall was added for MicroBlaze in 2.6.37.  */
+#if __LINUX_KERNEL_VERSION < 0x020625
+# undef __ASSUME_PRLIMIT64
+#endif
+
 /* Support for the pselect6, preadv and pwritev syscalls was added in
    3.15.  */
 #if __LINUX_KERNEL_VERSION < 0x030f00
diff --git a/sysdeps/unix/sysv/linux/sh/kernel-features.h b/sysdeps/unix/sysv/linux/sh/kernel-features.h
index ae272ef..9e7e445 100644
--- a/sysdeps/unix/sysv/linux/sh/kernel-features.h
+++ b/sysdeps/unix/sysv/linux/sh/kernel-features.h
@@ -40,3 +40,8 @@ 
 
 /* SH does not have a 64-bit inode field.  */
 #undef __ASSUME_ST_INO_64_BIT
+
+/* The prlimit64 syscall was added for SH in 2.6.37.  */
+#if __LINUX_KERNEL_VERSION < 0x020625
+# undef __ASSUME_PRLIMIT64
+#endif