[glibc PATCH] fcntl: put F_OFD_* constants under #ifdef __USE_FILE_OFFSET64

Joseph Myers joseph@codesourcery.com
Wed Aug 17 17:57:00 GMT 2016


On Wed, 17 Aug 2016, Jeff Layton wrote:

> The only difference between struct flock and flock64 is the size of the
> offset values. So, I think that __OFF_T_MATCHES_OFF64_T would suffice

Well, MIPS has e.g.:

#if _MIPS_SIM != _ABI64
    /* The 64-bit flock structure, used by the n64 ABI, and for 64-bit
       fcntls in o32 and n32, never has this field.  */
    long int l_sysid;
#endif

Now, this doesn't actually cause issues, because __OFF_T_MATCHES_OFF64_T 
isn't true for o32 or n32, and the layouts are indeed the same for n64.  
But you need to check every architecture to make sure there aren't any 
such issues that mean __OFF_T_MATCHES_OFF64_T is the wrong condition.

-- 
Joseph S. Myers
joseph@codesourcery.com



More information about the Libc-alpha mailing list