mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH] ntfs3: fix mapping pairs bounds check for alignment
@ 2026-08-05  6:45 Hongling Zeng
  2026-10-28  7:39 ` Konstantin Komarov
  0 siblings, 1 reply; 2+ messages in thread
From: Hongling Zeng @ 2026-08-05  6:45 UTC (permalink / raw)
  To: almaz.alexandrovich
  Cc: ntfs3, linux-kernel, zhongling0719, Hongling Zeng, stable

In the UpdateMappingPairs action, the expansion check compares the
unaligned new attribute size with the available record space. The new
size is aligned to an 8-byte boundary before the mapping pairs are
updated, so the check can underestimate the required space by up to
seven bytes.

Use the aligned size in the expansion check to ensure that the
subsequent update cannot exceed the available record space.

Fixes: b46acd6a6a62 ("fs/ntfs3: Add NTFS journal")
Cc: stable@vger.kernel.org
Signed-off-by: Hongling Zeng <zenghongling@kylinos.cn>
---
 fs/ntfs3/fslog.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/fs/ntfs3/fslog.c b/fs/ntfs3/fslog.c
index cc24c23e4db9..3440212ecb12 100644
--- a/fs/ntfs3/fslog.c
+++ b/fs/ntfs3/fslog.c
@@ -3388,7 +3388,8 @@ static int do_action(struct ntfs_log *log, struct OPEN_ATTR_ENRTY *oe,
 
 		if (!check_if_attr(rec, lrh) || !attr->non_res ||
 		    aoff < le16_to_cpu(attr->nres.run_off) || aoff > asize ||
-		    (nsize > asize && nsize - asize > record_size - used)) {
+		    (nsize > asize &&
+		     ALIGN(nsize, 8) - asize > record_size - used)) {
 			goto dirty_vol;
 		}
 
-- 
2.25.1


^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [PATCH] ntfs3: fix mapping pairs bounds check for alignment
  2026-08-05  6:45 [PATCH] ntfs3: fix mapping pairs bounds check for alignment Hongling Zeng
@ 2026-10-28  7:39 ` Konstantin Komarov
  0 siblings, 0 replies; 2+ messages in thread
From: Konstantin Komarov @ 2026-10-28  7:39 UTC (permalink / raw)
  To: Hongling Zeng; +Cc: ntfs3, linux-kernel, zhongling0719, stable

On 8/5/26 08:45, Hongling Zeng wrote:

> In the UpdateMappingPairs action, the expansion check compares the
> unaligned new attribute size with the available record space. The new
> size is aligned to an 8-byte boundary before the mapping pairs are
> updated, so the check can underestimate the required space by up to
> seven bytes.
>
> Use the aligned size in the expansion check to ensure that the
> subsequent update cannot exceed the available record space.
>
> Fixes: b46acd6a6a62 ("fs/ntfs3: Add NTFS journal")
> Cc: stable@vger.kernel.org
> Signed-off-by: Hongling Zeng <zenghongling@kylinos.cn>
> ---
>   fs/ntfs3/fslog.c | 3 ++-
>   1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/fs/ntfs3/fslog.c b/fs/ntfs3/fslog.c
> index cc24c23e4db9..3440212ecb12 100644
> --- a/fs/ntfs3/fslog.c
> +++ b/fs/ntfs3/fslog.c
> @@ -3388,7 +3388,8 @@ static int do_action(struct ntfs_log *log, struct OPEN_ATTR_ENRTY *oe,
>   
>   		if (!check_if_attr(rec, lrh) || !attr->non_res ||
>   		    aoff < le16_to_cpu(attr->nres.run_off) || aoff > asize ||
> -		    (nsize > asize && nsize - asize > record_size - used)) {
> +		    (nsize > asize &&
> +		     ALIGN(nsize, 8) - asize > record_size - used)) {
>   			goto dirty_vol;
>   		}
>   

Hello,

Your patch is applied, thanks.

Regards,
Konstantin


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2026-10-28  7:39 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-08-05  6:45 [PATCH] ntfs3: fix mapping pairs bounds check for alignment Hongling Zeng
2026-10-28  7:39 ` Konstantin Komarov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®