diff options
author | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2025-10-06 12:18:49 +0300 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2025-10-06 12:18:49 +0300 |
commit | a10e06965ed31322cc37060321dcb31fde2d4e85 (patch) | |
tree | 927ea996e54f50ae219487ae2de88c7c62bf0520 /mm | |
parent | d21ef9ec28b612c5d9fdb56fdb8f935b5e1f40aa (diff) | |
parent | 683320aeb0e83deac1b6c6794b0567969de09548 (diff) | |
download | linux-rolling-stable.tar.xz |
Merge v6.16.11linux-rolling-stable
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'mm')
-rw-r--r-- | mm/swapfile.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/mm/swapfile.c b/mm/swapfile.c index 4f47ec9118f8..671d17b7b0e8 100644 --- a/mm/swapfile.c +++ b/mm/swapfile.c @@ -2244,6 +2244,8 @@ static int unuse_mm(struct mm_struct *mm, unsigned int type) VMA_ITERATOR(vmi, mm, 0); mmap_read_lock(mm); + if (check_stable_address_space(mm)) + goto unlock; for_each_vma(vmi, vma) { if (vma->anon_vma && !is_vm_hugetlb_page(vma)) { ret = unuse_vma(vma, type); @@ -2253,6 +2255,7 @@ static int unuse_mm(struct mm_struct *mm, unsigned int type) cond_resched(); } +unlock: mmap_read_unlock(mm); return ret; } |