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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi!
> > So yeah, I think what I proposed before would probably be fine. But now
> > that Michael pushed the issue, it's dawned on me that we may be able to
> > get away with supporting it better if we turn the compatability
> > mechanism on its head and use F_OFD_*32 constants in the non-LFS case.
> 
> That's rather confusing to programmers, though.
> 
> We then have:
> 
> F_OFD_SETLK     always 64-bit
> F_SETLK         32-bit or 64-bit
> F_SETLK64       always 64-bit (not recommended)
> F_OFD_SETLK32   always 32-bit

It's even worse, the F_OFD_SETLK32 in the proposed patch behaves exactly
as F_SETLK so it's 32-bit or 64-bit depending on sizeof(long) in the
kernel, that is because the compat fcntl64 converts struct flock from
userspace to kernel struct flock and just call sys_fcntl() with the cmd
it has. So in the end if you call fcntl with F_OFD_SETLK32 on 64bit
kernel it expects flock64.

-- 
Cyril Hrubis
chrubis@xxxxxxx
--
To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [Samba]     [Device Mapper]     [CEPH Development]
  Powered by Linux