On 2025/5/7 09:53, Hongbo Li wrote:
On 2025/5/6 23:10, Gao Xiang wrote:
Hi Hongbo,
On 2025/4/29 21:42, Hongbo Li wrote:
In erofs, the inode number has the location information of
files. The default encode_fh uses the ino32, this will lack
of some information when the file is too big. So we need
the internal helpers to encode filehandle.
EROFS uses NID to indicate the on-disk inode offset, which can
exceed 32 bits. However, the default encode_fh uses the ino32,
thus it doesn't work if the image is large than 128GiB.
Thanks for helping me correct my description.
Here, an image larger than 128GiB won't trigger NID reversal. It requires a 128GiB file
inside, and the NID of the second file may exceed U32 during formatting. So here can we
change it to "However, the default encode_fh uses the ino32, thus it may not work if
there exist a file which is large than 128GiB." ?
Why? Currently EROFS doesn't arrange inode metadata
together, but close to its data (or its directory)
if possible for data locality.
So NIDs can exceed 32-bit for images larger than
128 GiB.
Thanks,
Gao Xiang
Thanks,
Hongbo