64-bit dblists

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

 



Hi all,

In my continuing quest to finish the 64-bit conversion of e2fsprogs, I
ran into this structure exported in ext2fs.h:

struct ext2_db_entry {
        ext2_ino_t      ino;
        blk_t   blk;
        int     blockcnt;
};

The "blk_t" is the problem here - we need a blk64_t.  A pointer to
this structure is passed to the user-provided directory block iterator
in ext2fs_dblist_iterate().

Assuming the goal is to preserve the ext2fs_dblist ABI, I can see two
ways of doing this:

1. Define ext2_db_entry2, ext2_dblist2, and ext2fs_dblist_*2() and do
the usual translation/conversion function business.

2. Use the magic number in the dblist to differentiate between old and
new-style dblists and keep the existing interfaces for functions that
only pass around pointers.  We'll also need ext2fs_dblist_iterate2()
and ext2fs_get_last2().

I find option #1 slightly less unpalatable than #2.  Does anyone have
an option #3?

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

[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