ext4: fix journal_ioprio mount option handling
authorOjaswin Mujoo <ojaswin@linux.ibm.com>
Mon, 18 Apr 2022 08:35:45 +0000 (14:05 +0530)
committerTheodore Ts'o <tytso@mit.edu>
Tue, 17 May 2022 18:17:29 +0000 (14:17 -0400)
commite4e58e5df309d695799c494958962100a4c25039
treea3d389686a13f446c94fe436e9e69a88d53d80bc
parentd63c00ea435a5352f486c259665a4ced60399421
ext4: fix journal_ioprio mount option handling

In __ext4_super() we always overwrote the user specified journal_ioprio
value with a default value, expecting parse_apply_sb_mount_options() to
later correctly set ctx->journal_ioprio to the user specified value.
However, if parse_apply_sb_mount_options() returned early because of
empty sbi->es_s->s_mount_opts, the correct journal_ioprio value was
never set.

This patch fixes __ext4_super() to only use the default value if the
user has not specified any value for journal_ioprio.

Similarly, the remount behavior was to either use journal_ioprio
value specified during initial mount, or use the default value
irrespective of the journal_ioprio value specified during remount.
This patch modifies this to first check if a new value for ioprio
has been passed during remount and apply it.  If no new value is
passed, use the value specified during initial mount.

Signed-off-by: Ojaswin Mujoo <ojaswin@linux.ibm.com>
Reviewed-by: Ritesh Harjani <riteshh@linux.ibm.com>
Tested-by: Ritesh Harjani <riteshh@linux.ibm.com>
Link: https://lore.kernel.org/r/20220418083545.45778-1-ojaswin@linux.ibm.com
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Cc: stable@kernel.org
fs/ext4/super.c