mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-07 19:49:33 -04:00
mm,hugetlb: drop unlikelys from hugetlb_fault
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>
This commit is contained in:
committed by
Andrew Morton
parent
cced784d2c
commit
1c0841140b
@@ -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;
|
||||
|
||||
Reference in New Issue
Block a user