diff mbox series

[10/26] Linux: Clean up pread64/pwrite64 system call names

Message ID 401c63072f7c81105a349fbf4023deb06aab1b15.1581279333.git.fweimer@redhat.com
State New
Headers show
Series Linux cleanups enabled by built-in system call tables | expand

Commit Message

Florian Weimer Feb. 9, 2020, 8:20 p.m. UTC
Linux removed the last definitions of __NR_pread and __NR_pwrite
in commit 4ba66a9760722ccbb691b8f7116cad2f791cca7b, the removal
of the blackfin port.  All architectures now define __NR_pread64 and
__NR_pwrite64 only.
---
 sysdeps/unix/sysv/linux/generic/sysdep.h      |  8 --------
 sysdeps/unix/sysv/linux/pread.c               |  6 +-----
 sysdeps/unix/sysv/linux/pread64.c             |  4 ----
 sysdeps/unix/sysv/linux/pread64_nocancel.c    |  4 ----
 sysdeps/unix/sysv/linux/pwrite.c              |  6 +-----
 sysdeps/unix/sysv/linux/pwrite64.c            |  4 ----
 sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h | 11 -----------
 7 files changed, 2 insertions(+), 41 deletions(-)

Comments

Adhemerval Zanella Netto Feb. 27, 2020, 11:07 p.m. UTC | #1
On 09/02/2020 17:20, Florian Weimer wrote:
> Linux removed the last definitions of __NR_pread and __NR_pwrite
> in commit 4ba66a9760722ccbb691b8f7116cad2f791cca7b, the removal
> of the blackfin port.  All architectures now define __NR_pread64 and
> __NR_pwrite64 only.

LGTM, thanks. 

Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>

> ---
>  sysdeps/unix/sysv/linux/generic/sysdep.h      |  8 --------
>  sysdeps/unix/sysv/linux/pread.c               |  6 +-----
>  sysdeps/unix/sysv/linux/pread64.c             |  4 ----
>  sysdeps/unix/sysv/linux/pread64_nocancel.c    |  4 ----
>  sysdeps/unix/sysv/linux/pwrite.c              |  6 +-----
>  sysdeps/unix/sysv/linux/pwrite64.c            |  4 ----
>  sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h | 11 -----------
>  7 files changed, 2 insertions(+), 41 deletions(-)
> 
> diff --git a/sysdeps/unix/sysv/linux/generic/sysdep.h b/sysdeps/unix/sysv/linux/generic/sysdep.h
> index 23defce7c3..40b4b955ca 100644
> --- a/sysdeps/unix/sysv/linux/generic/sysdep.h
> +++ b/sysdeps/unix/sysv/linux/generic/sysdep.h
> @@ -25,11 +25,3 @@
>  #ifdef __NR_llseek
>  # define __NR__llseek __NR_llseek
>  #endif
> -
> -#if __WORDSIZE == 64
> -/* By defining the older names, glibc will build syscall wrappers for
> -   both pread and pread64; sysdeps/unix/sysv/linux/wordsize-64/pread64.c
> -   will suppress generating any separate code for pread64.c.  */
> -#define __NR_pread __NR_pread64
> -#define __NR_pwrite __NR_pwrite64
> -#endif

Ok.

> diff --git a/sysdeps/unix/sysv/linux/pread.c b/sysdeps/unix/sysv/linux/pread.c
> index 7a09affd34..8dd87b3976 100644
> --- a/sysdeps/unix/sysv/linux/pread.c
> +++ b/sysdeps/unix/sysv/linux/pread.c
> @@ -21,14 +21,10 @@
>  
>  #ifndef __OFF_T_MATCHES_OFF64_T
>  
> -# ifndef __NR_pread
> -#  define __NR_pread __NR_pread64
> -# endif
> -
>  ssize_t
>  __libc_pread (int fd, void *buf, size_t count, off_t offset)
>  {
> -  return SYSCALL_CANCEL (pread, fd, buf, count, SYSCALL_LL_PRW (offset));
> +  return SYSCALL_CANCEL (pread64, fd, buf, count, SYSCALL_LL_PRW (offset));
>  }
>  
>  strong_alias (__libc_pread, __pread)

Ok.

> diff --git a/sysdeps/unix/sysv/linux/pread64.c b/sysdeps/unix/sysv/linux/pread64.c
> index a7f907186b..3d4ffbafc1 100644
> --- a/sysdeps/unix/sysv/linux/pread64.c
> +++ b/sysdeps/unix/sysv/linux/pread64.c
> @@ -19,10 +19,6 @@
>  #include <unistd.h>
>  #include <sysdep-cancel.h>
>  
> -#ifndef __NR_pread64
> -# define __NR_pread64 __NR_pread
> -#endif
> -
>  ssize_t
>  __libc_pread64 (int fd, void *buf, size_t count, off64_t offset)
>  {

Ok.

> diff --git a/sysdeps/unix/sysv/linux/pread64_nocancel.c b/sysdeps/unix/sysv/linux/pread64_nocancel.c
> index 2eb6873e66..af33985959 100644
> --- a/sysdeps/unix/sysv/linux/pread64_nocancel.c
> +++ b/sysdeps/unix/sysv/linux/pread64_nocancel.c
> @@ -20,10 +20,6 @@
>  #include <sysdep-cancel.h>
>  #include <not-cancel.h>
>  
> -#ifndef __NR_pread64
> -# define __NR_pread64 __NR_pread
> -#endif
> -
>  ssize_t
>  __pread64_nocancel (int fd, void *buf, size_t count, off64_t offset)
>  {

Ok.

> diff --git a/sysdeps/unix/sysv/linux/pwrite.c b/sysdeps/unix/sysv/linux/pwrite.c
> index 5ef208e885..17964686e5 100644
> --- a/sysdeps/unix/sysv/linux/pwrite.c
> +++ b/sysdeps/unix/sysv/linux/pwrite.c
> @@ -21,14 +21,10 @@
>  
>  #ifndef __OFF_T_MATCHES_OFF64_T
>  
> -# ifndef __NR_pwrite
> -#  define __NR_pwrite __NR_pwrite64
> -# endif
> -
>  ssize_t
>  __libc_pwrite (int fd, const void *buf, size_t count, off_t offset)
>  {
> -  return SYSCALL_CANCEL (pwrite, fd, buf, count, SYSCALL_LL_PRW (offset));
> +  return SYSCALL_CANCEL (pwrite64, fd, buf, count, SYSCALL_LL_PRW (offset));
>  }
>  
>  strong_alias (__libc_pwrite, __pwrite)

Ok.

> diff --git a/sysdeps/unix/sysv/linux/pwrite64.c b/sysdeps/unix/sysv/linux/pwrite64.c
> index 632f001f5b..709775c207 100644
> --- a/sysdeps/unix/sysv/linux/pwrite64.c
> +++ b/sysdeps/unix/sysv/linux/pwrite64.c
> @@ -19,10 +19,6 @@
>  #include <unistd.h>
>  #include <sysdep-cancel.h>
>  
> -#ifndef __NR_pwrite64
> -# define __NR_pwrite64 __NR_pwrite
> -#endif
> -
>  ssize_t
>  __libc_pwrite64 (int fd, const void *buf, size_t count, off64_t offset)
>  {

Ok.

> diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h b/sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h
> index 9ff4479dc3..cec1326662 100644
> --- a/sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h
> +++ b/sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h
> @@ -39,17 +39,6 @@
>  /* In newer 2.1 kernels __NR_syscall is missing so we define it here.  */
>  #define __NR_syscall 0
>  
> -/*
> - * Newer kernel versions redefined __NR_pread and __NR_pwrite to
> - * __NR_pread64 and __NR_pwrite64.
> - */
> -#ifndef __NR_pread
> -# define __NR_pread __NR_pread64
> -#endif
> -#ifndef __NR_pwrite
> -# define __NR_pwrite __NR_pwrite64
> -#endif
> -
>  #undef SYS_ify
>  #define SYS_ify(syscall_name)	__NR_##syscall_name
>  
> 

Ok (although patch does not apply cleanly with recent s390-64 sysdep.h
changes).
diff mbox series

Patch

diff --git a/sysdeps/unix/sysv/linux/generic/sysdep.h b/sysdeps/unix/sysv/linux/generic/sysdep.h
index 23defce7c3..40b4b955ca 100644
--- a/sysdeps/unix/sysv/linux/generic/sysdep.h
+++ b/sysdeps/unix/sysv/linux/generic/sysdep.h
@@ -25,11 +25,3 @@ 
 #ifdef __NR_llseek
 # define __NR__llseek __NR_llseek
 #endif
-
-#if __WORDSIZE == 64
-/* By defining the older names, glibc will build syscall wrappers for
-   both pread and pread64; sysdeps/unix/sysv/linux/wordsize-64/pread64.c
-   will suppress generating any separate code for pread64.c.  */
-#define __NR_pread __NR_pread64
-#define __NR_pwrite __NR_pwrite64
-#endif
diff --git a/sysdeps/unix/sysv/linux/pread.c b/sysdeps/unix/sysv/linux/pread.c
index 7a09affd34..8dd87b3976 100644
--- a/sysdeps/unix/sysv/linux/pread.c
+++ b/sysdeps/unix/sysv/linux/pread.c
@@ -21,14 +21,10 @@ 
 
 #ifndef __OFF_T_MATCHES_OFF64_T
 
-# ifndef __NR_pread
-#  define __NR_pread __NR_pread64
-# endif
-
 ssize_t
 __libc_pread (int fd, void *buf, size_t count, off_t offset)
 {
-  return SYSCALL_CANCEL (pread, fd, buf, count, SYSCALL_LL_PRW (offset));
+  return SYSCALL_CANCEL (pread64, fd, buf, count, SYSCALL_LL_PRW (offset));
 }
 
 strong_alias (__libc_pread, __pread)
diff --git a/sysdeps/unix/sysv/linux/pread64.c b/sysdeps/unix/sysv/linux/pread64.c
index a7f907186b..3d4ffbafc1 100644
--- a/sysdeps/unix/sysv/linux/pread64.c
+++ b/sysdeps/unix/sysv/linux/pread64.c
@@ -19,10 +19,6 @@ 
 #include <unistd.h>
 #include <sysdep-cancel.h>
 
-#ifndef __NR_pread64
-# define __NR_pread64 __NR_pread
-#endif
-
 ssize_t
 __libc_pread64 (int fd, void *buf, size_t count, off64_t offset)
 {
diff --git a/sysdeps/unix/sysv/linux/pread64_nocancel.c b/sysdeps/unix/sysv/linux/pread64_nocancel.c
index 2eb6873e66..af33985959 100644
--- a/sysdeps/unix/sysv/linux/pread64_nocancel.c
+++ b/sysdeps/unix/sysv/linux/pread64_nocancel.c
@@ -20,10 +20,6 @@ 
 #include <sysdep-cancel.h>
 #include <not-cancel.h>
 
-#ifndef __NR_pread64
-# define __NR_pread64 __NR_pread
-#endif
-
 ssize_t
 __pread64_nocancel (int fd, void *buf, size_t count, off64_t offset)
 {
diff --git a/sysdeps/unix/sysv/linux/pwrite.c b/sysdeps/unix/sysv/linux/pwrite.c
index 5ef208e885..17964686e5 100644
--- a/sysdeps/unix/sysv/linux/pwrite.c
+++ b/sysdeps/unix/sysv/linux/pwrite.c
@@ -21,14 +21,10 @@ 
 
 #ifndef __OFF_T_MATCHES_OFF64_T
 
-# ifndef __NR_pwrite
-#  define __NR_pwrite __NR_pwrite64
-# endif
-
 ssize_t
 __libc_pwrite (int fd, const void *buf, size_t count, off_t offset)
 {
-  return SYSCALL_CANCEL (pwrite, fd, buf, count, SYSCALL_LL_PRW (offset));
+  return SYSCALL_CANCEL (pwrite64, fd, buf, count, SYSCALL_LL_PRW (offset));
 }
 
 strong_alias (__libc_pwrite, __pwrite)
diff --git a/sysdeps/unix/sysv/linux/pwrite64.c b/sysdeps/unix/sysv/linux/pwrite64.c
index 632f001f5b..709775c207 100644
--- a/sysdeps/unix/sysv/linux/pwrite64.c
+++ b/sysdeps/unix/sysv/linux/pwrite64.c
@@ -19,10 +19,6 @@ 
 #include <unistd.h>
 #include <sysdep-cancel.h>
 
-#ifndef __NR_pwrite64
-# define __NR_pwrite64 __NR_pwrite
-#endif
-
 ssize_t
 __libc_pwrite64 (int fd, const void *buf, size_t count, off64_t offset)
 {
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h b/sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h
index 9ff4479dc3..cec1326662 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h
+++ b/sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h
@@ -39,17 +39,6 @@ 
 /* In newer 2.1 kernels __NR_syscall is missing so we define it here.  */
 #define __NR_syscall 0
 
-/*
- * Newer kernel versions redefined __NR_pread and __NR_pwrite to
- * __NR_pread64 and __NR_pwrite64.
- */
-#ifndef __NR_pread
-# define __NR_pread __NR_pread64
-#endif
-#ifndef __NR_pwrite
-# define __NR_pwrite __NR_pwrite64
-#endif
-
 #undef SYS_ify
 #define SYS_ify(syscall_name)	__NR_##syscall_name