public inbox for libc-alpha@sourceware.org
 help / color / mirror / Atom feed
* [PATCH 0/3] stat syscall family: support modern 32-bit ABI requirements
@ 2016-08-04 10:03 Yury Norov
  2016-08-04 10:03 ` [PATCH v4 2/3] 32-bit ABIs: support stat syscall family Yury Norov
                   ` (2 more replies)
  0 siblings, 3 replies; 28+ messages in thread
From: Yury Norov @ 2016-08-04 10:03 UTC (permalink / raw)
  To: libc-alpha, joseph, schwab
  Cc: arnd, catalin.marinas, davem, szabolcs.nagy, maxim.kuvyrkov,
	pinskia, bamvor.zhangjian, fweimer, Prasun.Kapoor,
	adhemerval.zanella, Yury Norov

In modern APIs stat and statfs structures has their layouts identical
to 64-bit version after changing off_t, ino_t etc sizes to 64-bit.
It means we can pass it to kernel same way as 64-bit ABI does. The only
exception is time_t-related fields. It can be handled by introducing
pads where needed.

Patch 1 is helper for patch 2 that does all the work by introducing paddings
where needed in structures stat and statfs. Patch 3 enables new ABI for
aarch64/ilp32 and should be applied with the rest of ilp32 series:
https://github.com/norov/glibc/tree/ilp32-2.24

Yury Norov (3):
  endian.h: introduce __type3264() macro
  32-bit ABIs: support stat syscall family
  [AARCH64] ILP32: redirect stat syscall family to 64-bit handlers

 string/endian.h                                    | 12 +++++
 sysdeps/unix/sysv/linux/aarch64/bits/typesizes.h   |  6 +++
 sysdeps/unix/sysv/linux/aarch64/ilp32/fstatfs64.c  | 35 +++++++++++++
 sysdeps/unix/sysv/linux/aarch64/ilp32/statfs64.c   | 38 ++++++++++++++
 sysdeps/unix/sysv/linux/fstatfs64.c                |  7 +++
 sysdeps/unix/sysv/linux/fxstat64.c                 | 11 ++++
 sysdeps/unix/sysv/linux/fxstatat64.c               | 15 +++++-
 sysdeps/unix/sysv/linux/generic/bits/stat.h        | 58 ++++++++++++++++------
 sysdeps/unix/sysv/linux/generic/bits/statfs.h      | 40 +++++++--------
 .../unix/sysv/linux/generic/wordsize-32/fstatfs.c  |  3 ++
 .../unix/sysv/linux/generic/wordsize-32/fxstat.c   |  3 ++
 .../unix/sysv/linux/generic/wordsize-32/fxstatat.c |  2 +
 .../unix/sysv/linux/generic/wordsize-32/lxstat.c   |  2 +
 .../unix/sysv/linux/generic/wordsize-32/lxstat64.c | 20 +++++++-
 .../unix/sysv/linux/generic/wordsize-32/statfs.c   |  2 +
 .../unix/sysv/linux/generic/wordsize-32/xstat.c    |  2 +
 .../unix/sysv/linux/generic/wordsize-32/xstat64.c  | 16 +++++-
 sysdeps/unix/sysv/linux/kernel-time.h              | 45 +++++++++++++++++
 sysdeps/unix/sysv/linux/statfs64.c                 |  8 +++
 time/time.h                                        | 12 ++++-
 20 files changed, 298 insertions(+), 39 deletions(-)
 create mode 100644 sysdeps/unix/sysv/linux/aarch64/ilp32/fstatfs64.c
 create mode 100644 sysdeps/unix/sysv/linux/aarch64/ilp32/statfs64.c
 create mode 100644 sysdeps/unix/sysv/linux/kernel-time.h

-- 
2.7.4

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

end of thread, other threads:[~2016-08-30 20:05 UTC | newest]

Thread overview: 28+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-08-04 10:03 [PATCH 0/3] stat syscall family: support modern 32-bit ABI requirements Yury Norov
2016-08-04 10:03 ` [PATCH v4 2/3] 32-bit ABIs: support stat syscall family Yury Norov
2016-08-04 12:40   ` Joseph Myers
2016-08-05  8:54     ` Yury Norov
2016-08-05 17:28       ` Joseph Myers
2016-08-09 13:27         ` Yury Norov
2016-08-09 14:24           ` Arnd Bergmann
2016-08-09 15:16             ` Yury Norov
2016-08-09 15:59               ` Arnd Bergmann
2016-08-09 17:41                 ` Yury Norov
2016-08-09 20:17                   ` Arnd Bergmann
2016-08-10 12:45             ` Zhangjian (Bamvor)
2016-08-09 15:54           ` Andreas Schwab
2016-08-09 20:29           ` Joseph Myers
2016-08-09 20:58             ` Arnd Bergmann
2016-08-09 21:04               ` Joseph Myers
2016-08-09 21:18                 ` Arnd Bergmann
2016-08-17 19:14                   ` Yury Norov
2016-08-25 15:34                     ` Arnd Bergmann
2016-08-29 16:02                       ` Yury Norov
2016-08-29 20:35                         ` Arnd Bergmann
2016-08-30 11:31                           ` Yury Norov
2016-08-30 15:21                             ` Arnd Bergmann
2016-08-30 19:29                               ` Yury Norov
2016-08-30 20:05                                 ` Arnd Bergmann
2016-08-04 10:03 ` [PATCH 3/3] [AARCH64] ILP32: redirect stat syscall family to 64-bit handlers Yury Norov
2016-08-04 12:41   ` Joseph Myers
2016-08-04 10:03 ` [PATCH 1/3] endian.h: introduce __type3264() macro 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).