From: Sasha Levin <sashal@kernel.org>
To: stable@vger.kernel.org
Cc: Sasha Levin <sashal@kernel.org>,
almaz.alexandrovich@paragon-software.com,
skhan@linuxfoundation.org, me@brighamcampbell.com,
jkoolstra@xs4all.nl, Sudheendra Sampath <giveback4fun@gmail.com>
Subject: Re: [PATCH 5.15.y v2] fs/ntfs3: Change new sparse cluster processing
Date: Thu, 20 Aug 2026 00:19:26 -0400 [thread overview]
Message-ID: <20260820040907.5@kernel.org> (raw)
In-Reply-To: <20260819023304.704604-1-giveback4fun@gmail.com>
On Tue, Aug 18, 2026 at 07:33:03PM -0700, Sudheendra Sampath wrote:
> if (lcn == SPARSE_LCN) {
> - valid = frame_vbo + ((u64)clen << sbi->cluster_bits);
> - if (ni->i_valid == valid) {
> - err = -EINVAL;
> - goto out;
> - }
> - ni->i_valid = valid;
> + ni->i_valid = valid =
> + frame_vbo + ((u64)clen << sbi->cluster_bits);
The v2 does fix the infoleak the v1 was bounced for, thanks. But this hunk
reverts 50c822fcb367 ("fs/ntfs3: prevent infinite loops caused by the next
valid being the same"), which shipped in 5.15.202, and brings back an
unprivileged local hang under inode_lock. Upstream only dropped that guard
in v7.0 as part of the delalloc rework.
> + } else if (mode & FALLOC_FL_COLLAPSE_RANGE) {
> + if (!is_supported_holes)
> + return -EOPNOTSUPP;
> + } else if (mode &
> + ~(FALLOC_FL_KEEP_SIZE | FALLOC_FL_PUNCH_HOLE |
> + FALLOC_FL_COLLAPSE_RANGE | FALLOC_FL_INSERT_RANGE)) {
Two problems here. INSERT_RANGE is now accepted without attr_insert_range(),
which 5.15 does not have, so fallocate(INSERT_RANGE) falls into the plain
allocate path and returns success having merely extended the file, instead
of -EOPNOTSUPP. And upstream leaves the COLLAPSE_RANGE arm empty and puts
the !is_supported_holes guard on its own INSERT_RANGE arm; moving it onto
COLLAPSE_RANGE breaks collapse-range on non-sparse files, which works today.
Beyond those: b3e048720dee ("fs/ntfs3: Make ntfs_fallocate return -ENOSPC
instead of -EFBIG") and 560e613352b4 ("fs/ntfs3: Remove redundant assignment
to variable frame") are folded in unannounced, the two attr_data_get_block()
call sites went back to clen=0 after v1 had them right, and the
"(cherry picked from ...)" line the v1 carried is gone, so there is no
upstream reference left in the message.
Could you respin against 5.15.y matching the 6.1.y backport 406a037d93b7
("fs/ntfs3: Change new sparse cluster processing"), rather than diffing
against a newer tree?
--
Thanks,
Sasha
prev parent reply other threads:[~2026-08-20 4:19 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-19 2:33 [PATCH 5.15.y v2] fs/ntfs3: Change new sparse cluster processing Sudheendra Sampath
2026-08-20 4:19 ` Sasha Levin [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260820040907.5@kernel.org \
--to=sashal@kernel.org \
--cc=almaz.alexandrovich@paragon-software.com \
--cc=giveback4fun@gmail.com \
--cc=jkoolstra@xs4all.nl \
--cc=me@brighamcampbell.com \
--cc=skhan@linuxfoundation.org \
--cc=stable@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox