public inbox for libc-alpha@sourceware.org
 help / color / mirror / Atom feed
* [PATCH 0/4] Linux lseek and {f}truncate syscall consolidation
@ 2016-09-20 15:02 Adhemerval Zanella
  2016-09-20 15:02 ` [PATCH 3/4] Consolidate Linux ftruncate implementations Adhemerval Zanella
                   ` (3 more replies)
  0 siblings, 4 replies; 31+ messages in thread
From: Adhemerval Zanella @ 2016-09-20 15:02 UTC (permalink / raw)
  To: libc-alpha

Hi all,

This is my ongoing Linux syscall consolidation to avoid code duplication
and to try make new ports easier.  The patchset contains update version
of my previous patches for lseek [1], truncate [2], and ftruncate [3].

[1] https://sourceware.org/ml/libc-alpha/2016-08/msg00810.html
[2] https://sourceware.org/ml/libc-alpha/2016-08/msg00811.html 
[3] https://sourceware.org/ml/libc-alpha/2016-08/msg00812.html

Adhemerval Zanella (4):
  Add INTERNAL_SYSCALL_CALL
  Consolidate lseek/lseek64/llseek implementations
  Consolidate Linux ftruncate implementations
  Consolidate Linux truncate implementations

 nptl/Makefile                                      |   2 +-
 posix/tst-truncate-common.c                        |  88 ++++++++++++++++
 posix/tst-truncate.c                               | 114 +--------------------
 posix/tst-truncate64.c                             |  21 +++-
 sysdeps/unix/sysdep.h                              |  43 +++++++-
 sysdeps/unix/sysv/linux/Makefile                   |   2 +-
 sysdeps/unix/sysv/linux/alpha/Makefile             |   2 +-
 sysdeps/unix/sysv/linux/arm/ftruncate64.c          |  36 -------
 sysdeps/unix/sysv/linux/arm/truncate64.c           |  35 -------
 sysdeps/unix/sysv/linux/ftruncate.c                |  35 +++++++
 sysdeps/unix/sysv/linux/ftruncate64.c              |  21 ++--
 sysdeps/unix/sysv/linux/generic/sysdep.h           |   4 +-
 .../sysv/linux/generic/wordsize-32/ftruncate.c     |  31 ------
 .../sysv/linux/generic/wordsize-32/ftruncate64.c   |  32 ------
 .../unix/sysv/linux/generic/wordsize-32/llseek.c   |  46 ---------
 .../unix/sysv/linux/generic/wordsize-32/lseek.c    |  38 -------
 .../unix/sysv/linux/generic/wordsize-32/truncate.c |  31 ------
 .../sysv/linux/generic/wordsize-32/truncate64.c    |  31 ------
 sysdeps/unix/sysv/linux/llseek.c                   |  46 ---------
 sysdeps/unix/sysv/linux/lseek.c                    |  56 ++++++++++
 sysdeps/unix/sysv/linux/lseek64.c                  |  54 +++++++++-
 sysdeps/unix/sysv/linux/mips/mips32/ftruncate64.c  |  36 -------
 sysdeps/unix/sysv/linux/mips/mips32/truncate64.c   |  35 -------
 sysdeps/unix/sysv/linux/mips/mips64/ftruncate64.c  |   1 -
 sysdeps/unix/sysv/linux/mips/mips64/llseek.c       |   1 -
 sysdeps/unix/sysv/linux/mips/mips64/syscalls.list  |   2 -
 sysdeps/unix/sysv/linux/mips/mips64/truncate64.c   |   1 -
 .../sysv/linux/powerpc/powerpc32/ftruncate64.c     |  36 -------
 .../unix/sysv/linux/powerpc/powerpc32/truncate64.c |  34 ------
 sysdeps/unix/sysv/linux/truncate.c                 |  35 +++++++
 sysdeps/unix/sysv/linux/truncate64.c               |  26 ++---
 sysdeps/unix/sysv/linux/wordsize-64/ftruncate64.c  |   1 -
 sysdeps/unix/sysv/linux/wordsize-64/syscalls.list  |   3 -
 sysdeps/unix/sysv/linux/wordsize-64/truncate64.c   |   1 -
 sysdeps/unix/sysv/linux/x86_64/x32/lseek64.S       |   1 +
 35 files changed, 361 insertions(+), 620 deletions(-)
 create mode 100644 posix/tst-truncate-common.c
 delete mode 100644 sysdeps/unix/sysv/linux/arm/ftruncate64.c
 delete mode 100644 sysdeps/unix/sysv/linux/arm/truncate64.c
 create mode 100644 sysdeps/unix/sysv/linux/ftruncate.c
 delete mode 100644 sysdeps/unix/sysv/linux/generic/wordsize-32/ftruncate.c
 delete mode 100644 sysdeps/unix/sysv/linux/generic/wordsize-32/ftruncate64.c
 delete mode 100644 sysdeps/unix/sysv/linux/generic/wordsize-32/llseek.c
 delete mode 100644 sysdeps/unix/sysv/linux/generic/wordsize-32/lseek.c
 delete mode 100644 sysdeps/unix/sysv/linux/generic/wordsize-32/truncate.c
 delete mode 100644 sysdeps/unix/sysv/linux/generic/wordsize-32/truncate64.c
 delete mode 100644 sysdeps/unix/sysv/linux/llseek.c
 create mode 100644 sysdeps/unix/sysv/linux/lseek.c
 delete mode 100644 sysdeps/unix/sysv/linux/mips/mips32/ftruncate64.c
 delete mode 100644 sysdeps/unix/sysv/linux/mips/mips32/truncate64.c
 delete mode 100644 sysdeps/unix/sysv/linux/mips/mips64/ftruncate64.c
 delete mode 100644 sysdeps/unix/sysv/linux/mips/mips64/llseek.c
 delete mode 100644 sysdeps/unix/sysv/linux/mips/mips64/truncate64.c
 delete mode 100644 sysdeps/unix/sysv/linux/powerpc/powerpc32/ftruncate64.c
 delete mode 100644 sysdeps/unix/sysv/linux/powerpc/powerpc32/truncate64.c
 create mode 100644 sysdeps/unix/sysv/linux/truncate.c
 delete mode 100644 sysdeps/unix/sysv/linux/wordsize-64/ftruncate64.c
 delete mode 100644 sysdeps/unix/sysv/linux/wordsize-64/truncate64.c
 create mode 100644 sysdeps/unix/sysv/linux/x86_64/x32/lseek64.S

-- 
2.7.4

^ permalink raw reply	[flat|nested] 31+ messages in thread
* [PATCH 0/4] Linux fallocate, posix_fallocate, and posix_fadvise consolidation
@ 2016-08-19 14:42 Adhemerval Zanella
  2016-08-19 14:42 ` [PATCH 1/4] Add INTERNAL_SYSCALL_CALL Adhemerval Zanella
  0 siblings, 1 reply; 31+ messages in thread
From: Adhemerval Zanella @ 2016-08-19 14:42 UTC (permalink / raw)
  To: libc-alpha

This is a follow up patch from my previous one to consolidate Linux
implementation over architectures.  As before, the general idea is to
remove the port proliferation of specific implementation and use a common
one plus arch-specific define to different behaviors.  It also align
with my work on trying to remove the sysdep-cancel.h requiriment to
simplify the long-standing cancellation issue.

For x32 this patch serie requires my previous {INLINE,INTERNAL}_SYSCALL
macro fix [1], although it is still possible to push them by still
enabling x32 to generate such syscall through syscalls.list.

[1] https://sourceware.org/ml/libc-alpha/2016-08/msg00443.html

Adhemerval Zanella (4):
  Add INTERNAL_SYSCALL_CALL
  Consolidate fallocate{64} implementations
  Consolidate posix_fallocate{64} implementations
  Consolidate posix_fadvise implementations

 ChangeLog                                          |  92 +++++++++++++++++
 io/Makefile                                        |   2 +-
 io/tst-posix_fallocate-common.c                    |  92 +++++++++++++++++
 io/tst-posix_fallocate.c                           | 107 ++++---------------
 io/tst-posix_fallocate64.c                         |  44 ++++++++
 posix/Makefile                                     |   3 +-
 posix/tst-posix_fadvise-common.c                   | 113 +++++++++++++++++++++
 posix/tst-posix_fadvise.c                          |  25 +++++
 posix/tst-posix_fadvise64.c                        |  44 ++++++++
 sysdeps/unix/sysdep.h                              |  42 +++++++-
 sysdeps/unix/sysv/linux/Makefile                   |   3 +-
 sysdeps/unix/sysv/linux/arm/kernel-features.h      |   7 ++
 sysdeps/unix/sysv/linux/arm/posix_fadvise64.c      |  38 -------
 sysdeps/unix/sysv/linux/fallocate.c                |  11 +-
 sysdeps/unix/sysv/linux/fallocate64.c              |  14 +--
 .../sysv/linux/generic/wordsize-32/posix_fadvise.c |  37 -------
 sysdeps/unix/sysv/linux/i386/posix_fadvise64.S     |  92 -----------------
 .../unix/sysv/linux/mips/mips32/posix_fadvise.c    |  41 --------
 .../unix/sysv/linux/mips/mips32/posix_fadvise64.c  |  60 -----------
 .../unix/sysv/linux/mips/mips64/n32/fallocate.c    |  33 ------
 .../unix/sysv/linux/mips/mips64/n32/fallocate64.c  |  33 ------
 .../sysv/linux/mips/mips64/n32/posix_fadvise.c     |  37 -------
 .../sysv/linux/mips/mips64/n32/posix_fadvise64.c   |  55 ----------
 .../sysv/linux/mips/mips64/n32/posix_fallocate.c   |  37 -------
 .../sysv/linux/mips/mips64/n32/posix_fallocate64.c |  38 -------
 .../unix/sysv/linux/mips/mips64/n64/fallocate.c    |   1 -
 .../unix/sysv/linux/mips/mips64/n64/fallocate64.c  |   1 -
 .../sysv/linux/mips/mips64/n64/posix_fadvise.c     |  50 ---------
 .../sysv/linux/mips/mips64/n64/posix_fadvise64.c   |  28 ++++-
 .../sysv/linux/mips/mips64/n64/posix_fallocate.c   |   1 -
 .../sysv/linux/mips/mips64/n64/posix_fallocate64.c |   1 -
 sysdeps/unix/sysv/linux/posix_fadvise.c            |  45 +++++---
 sysdeps/unix/sysv/linux/posix_fadvise64.c          |  52 +++++++---
 sysdeps/unix/sysv/linux/posix_fallocate.c          |   6 +-
 sysdeps/unix/sysv/linux/posix_fallocate64.c        |   8 +-
 sysdeps/unix/sysv/linux/powerpc/kernel-features.h  |   5 +
 .../sysv/linux/powerpc/powerpc32/posix_fadvise.c   |  39 -------
 .../sysv/linux/powerpc/powerpc32/posix_fadvise64.c |  55 ----------
 sysdeps/unix/sysv/linux/tile/kernel-features.h     |   1 +
 sysdeps/unix/sysv/linux/tst-fallocate-common.c     |  88 ++++++++++++++++
 sysdeps/unix/sysv/linux/tst-fallocate.c            |  25 +++++
 sysdeps/unix/sysv/linux/tst-fallocate64.c          |  54 ++++++++++
 sysdeps/unix/sysv/linux/wordsize-64/fallocate.c    |  34 -------
 sysdeps/unix/sysv/linux/wordsize-64/fallocate64.c  |   1 -
 .../unix/sysv/linux/wordsize-64/posix_fadvise.c    |  40 --------
 .../unix/sysv/linux/wordsize-64/posix_fadvise64.c  |   1 -
 .../unix/sysv/linux/wordsize-64/posix_fallocate.c  |  46 ---------
 .../sysv/linux/wordsize-64/posix_fallocate64.c     |   1 -
 sysdeps/unix/sysv/linux/x86_64/x32/syscalls.list   |   2 -
 49 files changed, 764 insertions(+), 921 deletions(-)
 create mode 100644 io/tst-posix_fallocate-common.c
 create mode 100644 io/tst-posix_fallocate64.c
 create mode 100644 posix/tst-posix_fadvise-common.c
 create mode 100644 posix/tst-posix_fadvise.c
 create mode 100644 posix/tst-posix_fadvise64.c
 delete mode 100644 sysdeps/unix/sysv/linux/arm/posix_fadvise64.c
 delete mode 100644 sysdeps/unix/sysv/linux/generic/wordsize-32/posix_fadvise.c
 delete mode 100644 sysdeps/unix/sysv/linux/i386/posix_fadvise64.S
 delete mode 100644 sysdeps/unix/sysv/linux/mips/mips32/posix_fadvise.c
 delete mode 100644 sysdeps/unix/sysv/linux/mips/mips32/posix_fadvise64.c
 delete mode 100644 sysdeps/unix/sysv/linux/mips/mips64/n32/fallocate.c
 delete mode 100644 sysdeps/unix/sysv/linux/mips/mips64/n32/fallocate64.c
 delete mode 100644 sysdeps/unix/sysv/linux/mips/mips64/n32/posix_fadvise.c
 delete mode 100644 sysdeps/unix/sysv/linux/mips/mips64/n32/posix_fadvise64.c
 delete mode 100644 sysdeps/unix/sysv/linux/mips/mips64/n32/posix_fallocate.c
 delete mode 100644 sysdeps/unix/sysv/linux/mips/mips64/n32/posix_fallocate64.c
 delete mode 100644 sysdeps/unix/sysv/linux/mips/mips64/n64/fallocate.c
 delete mode 100644 sysdeps/unix/sysv/linux/mips/mips64/n64/fallocate64.c
 delete mode 100644 sysdeps/unix/sysv/linux/mips/mips64/n64/posix_fadvise.c
 delete mode 100644 sysdeps/unix/sysv/linux/mips/mips64/n64/posix_fallocate.c
 delete mode 100644 sysdeps/unix/sysv/linux/mips/mips64/n64/posix_fallocate64.c
 delete mode 100644 sysdeps/unix/sysv/linux/powerpc/powerpc32/posix_fadvise.c
 delete mode 100644 sysdeps/unix/sysv/linux/powerpc/powerpc32/posix_fadvise64.c
 create mode 100644 sysdeps/unix/sysv/linux/tst-fallocate-common.c
 create mode 100644 sysdeps/unix/sysv/linux/tst-fallocate.c
 create mode 100644 sysdeps/unix/sysv/linux/tst-fallocate64.c
 delete mode 100644 sysdeps/unix/sysv/linux/wordsize-64/fallocate.c
 delete mode 100644 sysdeps/unix/sysv/linux/wordsize-64/fallocate64.c
 delete mode 100644 sysdeps/unix/sysv/linux/wordsize-64/posix_fadvise.c
 delete mode 100644 sysdeps/unix/sysv/linux/wordsize-64/posix_fadvise64.c
 delete mode 100644 sysdeps/unix/sysv/linux/wordsize-64/posix_fallocate.c
 delete mode 100644 sysdeps/unix/sysv/linux/wordsize-64/posix_fallocate64.c

-- 
2.7.4

^ permalink raw reply	[flat|nested] 31+ messages in thread

end of thread, other threads:[~2016-11-09 17:24 UTC | newest]

Thread overview: 31+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-09-20 15:02 [PATCH 0/4] Linux lseek and {f}truncate syscall consolidation Adhemerval Zanella
2016-09-20 15:02 ` [PATCH 3/4] Consolidate Linux ftruncate implementations Adhemerval Zanella
2016-10-11 14:41   ` Adhemerval Zanella
2016-10-25 17:54     ` Adhemerval Zanella
2016-11-09 13:44       ` Adhemerval Zanella
2016-11-09 15:33   ` Andreas Schwab
2016-11-09 17:24     ` Adhemerval Zanella
2016-09-20 15:02 ` [PATCH v3 2/4] Consolidate lseek/lseek64/llseek implementations Adhemerval Zanella
2016-10-11 14:40   ` Adhemerval Zanella
2016-10-25 17:54     ` Adhemerval Zanella
2016-11-04 16:23       ` Adhemerval Zanella
2016-11-08 19:02         ` Steve Ellcey
2016-09-20 15:02 ` [PATCH 1/4] Add INTERNAL_SYSCALL_CALL Adhemerval Zanella
2016-09-20 21:36   ` Florian Weimer
2016-09-21 18:00     ` Adhemerval Zanella
2016-09-21 19:22       ` Florian Weimer
2016-09-22 13:43         ` Adhemerval Zanella
2016-09-22 20:34           ` Florian Weimer
2016-09-23 14:16             ` Adhemerval Zanella
2016-09-23 20:39               ` Florian Weimer
2016-09-20 15:02 ` [PATCH 4/4] Consolidate Linux truncate implementations Adhemerval Zanella
2016-09-22 14:25   ` Yury Norov
2016-09-22 14:42     ` Adhemerval Zanella
2016-09-22 15:52       ` Yury Norov
2016-09-22 19:05         ` Adhemerval Zanella
2016-10-25 17:55           ` Adhemerval Zanella
2016-11-09 13:44             ` Adhemerval Zanella
  -- strict thread matches above, loose matches on Subject: below --
2016-08-19 14:42 [PATCH 0/4] Linux fallocate, posix_fallocate, and posix_fadvise consolidation Adhemerval Zanella
2016-08-19 14:42 ` [PATCH 1/4] Add INTERNAL_SYSCALL_CALL Adhemerval Zanella
2016-08-22 15:28   ` Yury Norov
2016-08-23 19:16     ` Adhemerval Zanella
2016-08-23 19:20       ` Yury Norov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).