Both patches were found on a 16 TB NTFS volume with 0xFFFFFEFF total
clusters, compiled with CONFIG_NTFS3_64BIT_CLUSTER=y.
Patch 1 is v2 of the previously submitted MFT bitmap fix, correcting
a malformed hunk header in the diff. No code change from v1.
Patch 2 is a new fix: sbi->maxbytes_sparse is assigned -1 in the
CONFIG_NTFS3_64BIT_CLUSTER path. As a signed loff_t, -1 is the most
negative value, causing vfs_setpos() to return -EINVAL for every seek
on sparse or compressed files on such a volume. Sequential reads work
correctly; random access does not. Fix assigns MAX_LFS_FILESIZE
instead, consistent with the other two limits in the same block.
Senjin (2):
fs/ntfs3: load ATTR_BITMAP run extents from $MFT extension records
fs/ntfs3: fix lseek EINVAL on sparse/compressed files with 64-bit clusters
fs/ntfs3/inode.c | 10 +++++++---
fs/ntfs3/super.c | 2 +-
2 files changed, 8 insertions(+), 4 deletions(-)