]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
mm,hugetlb: drop unlikelys from hugetlb_fault
authorOscar Salvador <osalvador@suse.de>
Mon, 30 Jun 2025 14:42:12 +0000 (16:42 +0200)
committerAndrew Morton <akpm@linux-foundation.org>
Sun, 13 Jul 2025 23:38:23 +0000 (16:38 -0700)
The unlikely predates an era where we were checking for
hwpoisoned/migration entries prior to checking whether the pte was
present.

Currently, we check for the pte to be a migration/hwpoison entry after we
have checked that is not present, so it must be either one or the other.

Link: https://lkml.kernel.org/r/20250627102904.107202-6-osalvador@suse.de
Link: https://lkml.kernel.org/r/20250630144212.156938-6-osalvador@suse.de
Signed-off-by: Oscar Salvador <osalvador@suse.de>
Acked-by: David Hildenbrand <david@redhat.com>
Cc: Gavin Guo <gavinguo@igalia.com>
Cc: Muchun Song <muchun.song@linux.dev>
Cc: Peter Xu <peterx@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
mm/hugetlb.c

index eead921831bf50441852ec4ddea5e852e75bb23f..f13fa5aa6624b58491c459d9ef7cedbd7b5edffc 100644 (file)
@@ -6729,7 +6729,7 @@ vm_fault_t hugetlb_fault(struct mm_struct *mm, struct vm_area_struct *vma,
 
        /* Not present, either a migration or a hwpoisoned entry */
        if (!pte_present(vmf.orig_pte)) {
-               if (unlikely(is_hugetlb_entry_migration(vmf.orig_pte))) {
+               if (is_hugetlb_entry_migration(vmf.orig_pte)) {
                        /*
                         * Release the hugetlb fault lock now, but retain
                         * the vma lock, because it is needed to guard the
@@ -6740,7 +6740,7 @@ vm_fault_t hugetlb_fault(struct mm_struct *mm, struct vm_area_struct *vma,
                        mutex_unlock(&hugetlb_fault_mutex_table[hash]);
                        migration_entry_wait_huge(vma, vmf.address, vmf.pte);
                        return 0;
-               } else if (unlikely(is_hugetlb_entry_hwpoisoned(vmf.orig_pte)))
+               } else if (is_hugetlb_entry_hwpoisoned(vmf.orig_pte))
                        ret = VM_FAULT_HWPOISON_LARGE |
                            VM_FAULT_SET_HINDEX(hstate_index(h));
                goto out_mutex;