Re: [PATCH v4 5/7] ext2fs: Add helper functions to access inode numbers

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

 



On May 4, 2018, at 1:09 AM, c17828 <artem.blagodarenko@xxxxxxxxx> wrote:
> 
> From: Artem Blagodarenko <artem.blagodarenko@xxxxxxxxx>
> 
> 64-bit inodes counter uses extra fields to store hight part.
> Let's incapsulate inode number reading and writing to extend
> counter in next commits.
> 
> Lustre-bug: https://jira.hpdd.intel.com/browse/LU-9309
> Signed-off-by: Artem Blagodarenko <artem.blagodarenko@xxxxxxxxx>
> ---

So this patch appears fine by itself, but I don't see in the 6/7 patch
where all of the interfaces in lib/ext2fs/ext2fs.h that use ext2fs_ino_t
are updated to add a new "version 2" interface that takes ext2fs_ino64_t
instead?

This would otherwise break ABI compatibility, and likely also apps
that are using the old interfaces with a 32-bit inode number.

It seems to me that you have fixed the places where there can be a
64-bit *count* of inodes, but you haven't fixed all of the places that
have a 64-bit inode *number* (i.e. passed as a parameter to a function).

I think one good option would be to introduce a new "ext2fs_ino32_t"
and *not* add "ext2fs_ino64_t".  Then change the ext2fs_ino_t to be
64-bit and make the old interfaces use ext2fs_ino32_t.  That way newly
compiled applications using libext2fs will use the new 64-bit interfaces
and the old ones would just need the old interfaces for compatibility.
I'm not sure what Ted thinks about that, however.

I believe there is also a "library ABI checker" tool somewhere in the
build system, but I don't know how to activate it.

Cheers, Andreas





Attachment: signature.asc
Description: Message signed with OpenPGP


[Index of Archives]     [Reiser Filesystem Development]     [Ceph FS]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux FS]     [Yosemite National Park]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Device Mapper]     [Linux Media]

  Powered by Linux