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

Jeff Layton jlayton@redhat.com
Wed Aug 17 18:23:00 GMT 2016


On Wed, 2016-08-17 at 17:56 +0000, Joseph Myers wrote:
> 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.
> 

Yeah, I saw that but all of that is down inside the pad that the kernel
doesn't really care about. The important bits are the parts up to and
including the pid field.

I did go through all of them before mentioning that and I still think
it is sufficient, but I certainly wouldn't mind having someone sanity
check me here!

-- 
Jeff Layton <jlayton@redhat.com>



More information about the Libc-alpha mailing list