Thread (58 messages) 58 messages, 12 authors, 2019-07-09

[PATCH 04/24] 32-bit userspace ABI: introduce ARCH_32BIT_OFF_T config option

From: arnd@arndb.de (Arnd Bergmann)
Date: 2018-06-11 07:48:11
Also in: linux-api, linux-arch, linux-doc, lkml

On Sat, Jun 9, 2018 at 9:42 AM, Yury Norov [off-list ref] wrote:
On Fri, Jun 08, 2018 at 06:32:07PM +0100, Catalin Marinas wrote:
quoted
On Wed, May 16, 2018 at 11:18:49AM +0300, Yury Norov wrote:
quoted
diff --git a/arch/Kconfig b/arch/Kconfig
index 76c0b54443b1..ee079244dc3c 100644
--- a/arch/Kconfig
+++ b/arch/Kconfig
@@ -264,6 +264,21 @@ config ARCH_THREAD_STACK_ALLOCATOR
 config ARCH_WANTS_DYNAMIC_TASK_STRUCT
    bool

+config ARCH_32BIT_OFF_T
+   bool
+   depends on !64BIT
+   help
+     All new 32-bit architectures should have 64-bit off_t type on
+     userspace side which corresponds to the loff_t kernel type. This
+     is the requirement for modern ABIs. Some existing architectures
+     already have 32-bit off_t. This option is enabled for all such
+     architectures explicitly. Namely: arc, arm, blackfin, cris, frv,
+     h8300, hexagon, m32r, m68k, metag, microblaze, mips32, mn10300,
+     nios2, openrisc, parisc32, powerpc32, score, sh, sparc, tile32,
+     unicore32, x86_32 and xtensa. This is the complete list. Any
+     new 32-bit architecture should declare 64-bit off_t type on user
+     side and so should not enable this option.
Do you know if this is the case for riscv and nds32, merged in the
meantime? If not, I suggest you drop this patch altogether and just
define force_o_largefile() for arm64/ilp32 as we don't seem to stick to
"all new 32-bit architectures should have 64-bit off_t".
I wrote this patch at request of Arnd Bergmann. This is actually his
words that all new 32-bit architectures should have 64-bit off_t. So
I was surprized when riscv was merged with 32-bit off_t (and I didn't
follow nds32).

If this rule is still in force, we'd better add new exceptions to this
patch. Otherwise, we can drop it.

Arnd, could you please comment it?
I completely forgot about it and had assumed that it was merged long
ago, sorry about that.

        Arnd
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help