mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-25 06:03:36 -04:00
mm/hugetlbfs: fix for_each_hstate() loop in init_hugetlbfs_fs()
commit 15f0ec941f4f908fefa23a30ded8358977cc1cc0 upstream.
LTP memfd_create04 started failing for some huge page sizes
after v5.4-10135-gc3bfc5dd73c6.
The problem is the check introduced to for_each_hstate() loop that
should skip default_hstate_idx. Since it doesn't update 'i' counter,
all subsequent huge page sizes are skipped as well.
Fixes: 8fc312b32b25 ("mm/hugetlbfs: fix error handling when setting up mounts")
Signed-off-by: Jan Stancek <jstancek@redhat.com>
Reviewed-by: Mike Kravetz <mike.kravetz@oracle.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
596180c211
commit
1cab43eb61
1 changed files with 3 additions and 1 deletions
|
|
@ -1478,8 +1478,10 @@ static int __init init_hugetlbfs_fs(void)
|
|||
/* other hstates are optional */
|
||||
i = 0;
|
||||
for_each_hstate(h) {
|
||||
if (i == default_hstate_idx)
|
||||
if (i == default_hstate_idx) {
|
||||
i++;
|
||||
continue;
|
||||
}
|
||||
|
||||
mnt = mount_one_hugetlbfs(h);
|
||||
if (IS_ERR(mnt))
|
||||
|
|
|
|||
Loading…
Reference in a new issue