Thread (19 messages) 19 messages, 5 authors, 2016-03-31

[RFC5 PATCH v6 00/21] ILP32 for ARM64

From: arnd@arndb.de (Arnd Bergmann)
Date: 2016-03-29 19:31:43
Also in: lkml

Possibly related (same subject, not in this thread)

On Tuesday 29 March 2016 15:54:52 Joseph Myers wrote:
On Tue, 29 Mar 2016, Arnd Bergmann wrote:
quoted
In glibc, I think we need to define fewer entry points, not more.
Instead of having both lseek and lseek64, only one of them should
be provided, and that should always take a 64-bit offset, calling
into the kernel with the _llseek syscall entry.
lseek64 is part of the public API, on all platforms.  It should be aliased 
to lseek where possible.
Right, makes sense.
Strictly, it would be possible to provide it in the API without it being 
part of the ABI, by arranging the headers so that calls to lseek64 result 
in objects with a reference to lseek (because it uses the off64_t typedef, 
it's not valid to declare it yourself rather than including a header that 
declares it).  I don't think it would be a good idea for a new 
sub-architecture port to try introducing such a difference from all other 
ports, however.
How do we do it then? Should we just define __USE_FILE_OFFSET64
unconditionally for all new 32-bit architectures and leave the
code dealing with 32-bit off_t/ino_t in place but unreachable, to
minimize the differences?

Or should all the obsolete types be defined the same way as their
replacements so we have 64-bit __OFF_T_TYPE/__INO_T_TYPE
and use the same binary implementation regardless of FILE_OFFSET_BITS?

	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