[Linux PATCH] fcntl: add new F_OFD_*32 constants and handle them appropriately

Paul Eggert eggert@cs.ucla.edu
Thu Aug 18 19:36:00 GMT 2016


Zack Weinberg wrote:
> We could change the libc headers used on old-ILP32 ABIs so that
> _FILE_OFFSET_BITS=64 is defined by default (matching the LP64-ABI
> headers).  This would break the ABI of every shared library that
> exports a structure (transitively) containing a field of type off_t,
> ino_t, fsblkcnt_t, fsfilcnt_t, or rlim_t.

As I understand it, most (all important?) such libraries are already compiled 
with _FILE_OFFSET_BITS=64 anyway, so their ABIs wouldn't break.

How about if we start the transition by deprecating the use of 32-bit off_t in 
user or library code on platforms with 32-bit long? The attached patch plus lots 
of similar patches, say (this is just a sketch). Really, it's long since time 
that file offsets were 64 bits.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: deprecate-32-bit-off-t.patch
Type: text/x-diff
Size: 480 bytes
Desc: not available
URL: <http://sourceware.org/pipermail/libc-alpha/attachments/20160818/5b83c0bd/attachment.bin>


More information about the Libc-alpha mailing list