5 Commits

Author SHA1 Message Date
肖在
eaccc141e1 Handle non-continuous data blocks in directory extents 2024-05-11 11:33:07 +08:00
肖在
88a9257d49
Revert "Handle non-continuous data blocks in"
This reverts commit e0cd43f8a5486debeba17349abbb088001164d70.
2024-05-11 03:26:36 +00:00
肖在
e0cd43f8a5 Handle non-continuous data blocks in
directory extents

The directory extent list does not have to be a continuous list of data
blocks. When GRUB tries to read a non-existant member of the list,
grub_xfs_read_file() will return a block of zero'ed memory. Checking for
a zero'ed magic number is sufficient to skip this non-existant data block.

Prior to commit 07318ee7e (fs/xfs: Fix XFS directory extent parsing)
this was handled as a subtle side effect of reading the (non-existant)
tail data structure. Since the block was zero'ed the computation of the
number of directory entries in the block would return 0 as well.
2024-05-11 10:06:01 +08:00
肖在
fd1e9fdd65
Revert " Handle non-continuous data blocks in"
This reverts commit 242fa05f2412202b241bbea01dc2bd69214b2e33.
2024-05-11 01:46:46 +00:00
肖在
242fa05f24 Handle non-continuous data blocks in
directory extents

The directory extent list does not have to be a continuous list of data
blocks. When GRUB tries to read a non-existant member of the list,
grub_xfs_read_file() will return a block of zero'ed memory. Checking for
a zero'ed magic number is sufficient to skip this non-existant data block.
2024-05-11 09:32:27 +08:00