* Re: [PATCH] ext4: set awu_max_opt to awu_max
2026-09-10 10:08 [PATCH] ext4: set awu_max_opt to awu_max Pankaj Raghav
@ 2026-09-10 10:10 ` sashiko-bot
2026-09-10 11:17 ` Jan Kara
` (2 subsequent siblings)
3 siblings, 0 replies; 5+ messages in thread
From: sashiko-bot @ 2026-09-10 10:10 UTC (permalink / raw)
To: Pankaj Raghav; +Cc: linux-ext4, tytso
> commit 5d894321c49e ("fs: add atomic write unit max opt to statx")
> added atomic write max optimal to statx. As XFS can support large atomic
> writes through SW, max_opt exposes the value that will be HW accelerated
> atomics.
>
> As ext4 does not support SW atomics, set awu_max_opt to awu_max.
>
> Signed-off-by: Pankaj Raghav <p.raghav@samsung.com>
Sashiko has reviewed this patch and found no issues. It looks great!
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260910100829.2532894-1-p.raghav@samsung.com?part=1
^ permalink raw reply [flat|nested] 5+ messages in thread* Re: [PATCH] ext4: set awu_max_opt to awu_max
2026-09-10 10:08 [PATCH] ext4: set awu_max_opt to awu_max Pankaj Raghav
2026-09-10 10:10 ` sashiko-bot
@ 2026-09-10 11:17 ` Jan Kara
2026-09-10 15:15 ` Ritesh Harjani
2026-09-11 14:15 ` Ojaswin Mujoo
3 siblings, 0 replies; 5+ messages in thread
From: Jan Kara @ 2026-09-10 11:17 UTC (permalink / raw)
To: Pankaj Raghav
Cc: linux-ext4, Theodore Ts'o, Ojaswin Mujoo, Ritesh Harjani,
Baokun Li, Zhang Yi, Andreas Dilger, Jan Kara
On Thu 10-09-26 12:08:29, Pankaj Raghav wrote:
> commit 5d894321c49e ("fs: add atomic write unit max opt to statx")
> added atomic write max optimal to statx. As XFS can support large atomic
> writes through SW, max_opt exposes the value that will be HW accelerated
> atomics.
>
> As ext4 does not support SW atomics, set awu_max_opt to awu_max.
>
> Signed-off-by: Pankaj Raghav <p.raghav@samsung.com>
Yes, I guess it's better to report it than not and let userspace guess. Feel
free to add:
Reviewed-by: Jan Kara <jack@suse.cz>
Honza
> ---
> fs/ext4/inode.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/fs/ext4/inode.c b/fs/ext4/inode.c
> index 26f0f9714f03..93056c971e74 100644
> --- a/fs/ext4/inode.c
> +++ b/fs/ext4/inode.c
> @@ -6304,7 +6304,8 @@ int ext4_getattr(struct mnt_idmap *idmap, const struct path *path,
> awu_max = sbi->s_awu_max;
> }
>
> - generic_fill_statx_atomic_writes(stat, awu_min, awu_max, 0);
> + generic_fill_statx_atomic_writes(stat, awu_min, awu_max,
> + awu_max);
> }
>
> flags = ei->i_flags & EXT4_FL_USER_VISIBLE;
>
> base-commit: d5ba62a0b130441bcabca59c2fd2d59e65360234
> --
> 2.51.2
>
--
Jan Kara <jack@suse.com>
SUSE Labs, CR
^ permalink raw reply [flat|nested] 5+ messages in thread* Re: [PATCH] ext4: set awu_max_opt to awu_max
2026-09-10 10:08 [PATCH] ext4: set awu_max_opt to awu_max Pankaj Raghav
2026-09-10 10:10 ` sashiko-bot
2026-09-10 11:17 ` Jan Kara
@ 2026-09-10 15:15 ` Ritesh Harjani
2026-09-11 14:15 ` Ojaswin Mujoo
3 siblings, 0 replies; 5+ messages in thread
From: Ritesh Harjani @ 2026-09-10 15:15 UTC (permalink / raw)
To: Pankaj Raghav
Cc: Ojaswin Mujoo, Baokun Li, Zhang Yi, Andreas Dilger, Jan Kara,
Pankaj Raghav, linux-ext4, Theodore Ts'o
Pankaj Raghav <p.raghav@samsung.com> writes:
> commit 5d894321c49e ("fs: add atomic write unit max opt to statx")
> added atomic write max optimal to statx. As XFS can support large atomic
> writes through SW, max_opt exposes the value that will be HW accelerated
> atomics.
>
> As ext4 does not support SW atomics, set awu_max_opt to awu_max.
>
As per the man page the awu_max_opt=0 means:
A value of zero indicates that stx_atomic_write_unit_max is the
optimised limit.
[1]: https://man7.org/linux/man-pages/man2/statx.2.html
But the value of 0 isn't wrong either. Jan, added that it might be more
clear to report awu_max there instead of 0. So, if are going to do it -
let's add this info to the commit msg. So it doesn't look like we were
trying to fix anything here ;)
btw note that bdev_statx() still reports 0 for awu_max_opt.
With that please feel free to add:
Reviewed-by: Ritesh Harjani (IBM) <ritesh.list@gmail.com>
> Signed-off-by: Pankaj Raghav <p.raghav@samsung.com>
> ---
> fs/ext4/inode.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/fs/ext4/inode.c b/fs/ext4/inode.c
> index 26f0f9714f03..93056c971e74 100644
> --- a/fs/ext4/inode.c
> +++ b/fs/ext4/inode.c
> @@ -6304,7 +6304,8 @@ int ext4_getattr(struct mnt_idmap *idmap, const struct path *path,
> awu_max = sbi->s_awu_max;
> }
>
> - generic_fill_statx_atomic_writes(stat, awu_min, awu_max, 0);
> + generic_fill_statx_atomic_writes(stat, awu_min, awu_max,
> + awu_max);
> }
>
> flags = ei->i_flags & EXT4_FL_USER_VISIBLE;
>
> base-commit: d5ba62a0b130441bcabca59c2fd2d59e65360234
> --
> 2.51.2
^ permalink raw reply [flat|nested] 5+ messages in thread* Re: [PATCH] ext4: set awu_max_opt to awu_max
2026-09-10 10:08 [PATCH] ext4: set awu_max_opt to awu_max Pankaj Raghav
` (2 preceding siblings ...)
2026-09-10 15:15 ` Ritesh Harjani
@ 2026-09-11 14:15 ` Ojaswin Mujoo
3 siblings, 0 replies; 5+ messages in thread
From: Ojaswin Mujoo @ 2026-09-11 14:15 UTC (permalink / raw)
To: Pankaj Raghav
Cc: linux-ext4, Theodore Ts'o, Ritesh Harjani, Baokun Li,
Zhang Yi, Andreas Dilger, Jan Kara
On Thu, Sep 10, 2026 at 12:08:29PM +0200, Pankaj Raghav wrote:
> commit 5d894321c49e ("fs: add atomic write unit max opt to statx")
> added atomic write max optimal to statx. As XFS can support large atomic
> writes through SW, max_opt exposes the value that will be HW accelerated
> atomics.
>
> As ext4 does not support SW atomics, set awu_max_opt to awu_max.
>
> Signed-off-by: Pankaj Raghav <p.raghav@samsung.com>
Hey Pankaj, I think 0 is allowed for backward compatibility as
highlighted in the commit you mentioned:
...
Masks STATX{_ATTR}_WRITE_ATOMIC can be used to get this new field. This is
ok for older kernels which don't support this new field, as they would
report 0 in this field (from zeroing in cp_statx()) already.
...
But yeah sure, advertising it as awu_max is more clearer.
Reviewed-by: Ojaswin Mujoo <ojaswin@linux.ibm.com>
Regards,
ojaswin
> ---
> fs/ext4/inode.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/fs/ext4/inode.c b/fs/ext4/inode.c
> index 26f0f9714f03..93056c971e74 100644
> --- a/fs/ext4/inode.c
> +++ b/fs/ext4/inode.c
> @@ -6304,7 +6304,8 @@ int ext4_getattr(struct mnt_idmap *idmap, const struct path *path,
> awu_max = sbi->s_awu_max;
> }
>
> - generic_fill_statx_atomic_writes(stat, awu_min, awu_max, 0);
> + generic_fill_statx_atomic_writes(stat, awu_min, awu_max,
> + awu_max);
> }
>
> flags = ei->i_flags & EXT4_FL_USER_VISIBLE;
>
> base-commit: d5ba62a0b130441bcabca59c2fd2d59e65360234
> --
> 2.51.2
>
^ permalink raw reply [flat|nested] 5+ messages in thread