Re: Question about inode64

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

 



On 5/10/18 12:31 PM, Su Yue wrote:
> Hi, XFS developers
> 
> Recently, I was told that some 32bit applications don't work
> on large XFS filesystems. And it is caused by ino overflow in syscalls.
> 
> If I don't misunderstand libxfs/xfs_format, XFS' absolute inode number
> consists of agno_log
> -agblklog-inopblog bits.
> So significative bits = ROUND(log2(Disk size / AG size)) + ROUND(log2(AG
> size / BLK size)) + ROUND(log2(BLK size / inode size)). Right?

> Does it mean that it's feasible to avoid ino overflow by control of disk
> size, AG size, block size, inode size when mkfs even the disk will be mount
> with option inode64.

Yes, inode number is an encoded disk location, and the encoding depends
on various other bits of filesystem geometry.

Note that "inode64" only means that it will /allow/ some inodes to exceed
32 bits, it does not mean that every inode number /will/ be > 32 bits.

But most people don't want to constrain their filesystem geometry around
inode number sizing; if you require 32-bit inodes, just use the inode32 mount
option.

Or better yet, fix the application.  :)

-Eric

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



[Index of Archives]     [XFS Filesystem Development (older mail)]     [Linux Filesystem Development]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux RAID]     [Linux SCSI]


  Powered by Linux