| From: Barry Song <v-songbaohua@oppo.com> |
| Subject: minor cleanup according to Peter Xu |
| Date: Wed, 26 Feb 2025 15:22:17 +1300 |
| |
| According to Peter Xu: |
| 1. Unnecessary line move. |
| 2. Can drop this folio check as it just did check |
| "!IS_ERR_OR_NULL(folio)" |
| 3. Not sure if it can do any harm, but maybe still nicer |
| to put swap before locking folio. |
| |
| Link: https://lkml.kernel.org/r/20250226024411.47092-1-21cnbao@gmail.com |
| Signed-off-by: Barry Song <v-songbaohua@oppo.com> |
| Cc: Peter Xu <peterx@redhat.com> |
| Signed-off-by: Andrew Morton <akpm@linux-foundation.org> |
| --- |
| |
| mm/userfaultfd.c | 8 ++++---- |
| 1 file changed, 4 insertions(+), 4 deletions(-) |
| |
| --- a/mm/userfaultfd.c~mm-fix-kernel-bug-when-userfaultfd_move-encounters-swapcache-fix |
| +++ a/mm/userfaultfd.c |
| @@ -1105,8 +1105,8 @@ static int move_swap_pte(struct mm_struc |
| |
| orig_src_pte = ptep_get_and_clear(mm, src_addr, src_pte); |
| set_pte_at(mm, dst_addr, dst_pte, orig_src_pte); |
| - |
| double_pt_unlock(dst_ptl, src_ptl); |
| + |
| return 0; |
| } |
| |
| @@ -1373,7 +1373,7 @@ retry: |
| folio = filemap_get_folio(swap_address_space(entry), |
| swap_cache_index(entry)); |
| if (!IS_ERR_OR_NULL(folio)) { |
| - if (folio && folio_test_large(folio)) { |
| + if (folio_test_large(folio)) { |
| err = -EBUSY; |
| folio_put(folio); |
| goto out; |
| @@ -1384,10 +1384,10 @@ retry: |
| pte_unmap(&orig_src_pte); |
| pte_unmap(&orig_dst_pte); |
| src_pte = dst_pte = NULL; |
| - /* now we can block and wait */ |
| - folio_lock(src_folio); |
| put_swap_device(si); |
| si = NULL; |
| + /* now we can block and wait */ |
| + folio_lock(src_folio); |
| goto retry; |
| } |
| } |
| _ |