Link: https://lore.kernel.org/r/20260217200002.683975158@linuxfoundation.org Tested-by: Florian Fainelli <florian.fainelli@broadcom.com> Tested-by: Takeshi Ogasawara <takeshi.ogasawara@futuring-girl.com> Tested-by: Peter Schneider <pschneider1968@googlemail.com> Tested-by: Jon Hunter <jonathanh@nvidia.com> Tested-by: Salvatore Bonaccorso <carnil@debian.org> Tested-by: Brett A C Sheffield <bacs@librecast.net> Tested-by: Mark Brown <broonie@kernel.org> Tested-by: Luna Jernberg <droidbittin@gmail.com> Tested-by: Ronald Warsow <rwarsow@gmx.de> Tested-by: Justin M. Forbes <jforbes@fedoraproject.org> Tested-by: Ron Economos <re@w6rz.net> Tested-by: Miguel Ojeda <ojeda@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
30 lines
740 B
C
30 lines
740 B
C
/* SPDX-License-Identifier: GPL-2.0-only */
|
|
/*
|
|
* arch/arm/include/asm/hugetlb-3level.h
|
|
*
|
|
* Copyright (C) 2012 ARM Ltd.
|
|
*
|
|
* Based on arch/x86/include/asm/hugetlb.h.
|
|
*/
|
|
|
|
#ifndef _ASM_ARM_HUGETLB_3LEVEL_H
|
|
#define _ASM_ARM_HUGETLB_3LEVEL_H
|
|
|
|
|
|
/*
|
|
* If our huge pte is non-zero then mark the valid bit.
|
|
* This allows pte_present(huge_ptep_get(mm,addr,ptep)) to return true for non-zero
|
|
* ptes.
|
|
* (The valid bit is automatically cleared by set_pte_at for PROT_NONE ptes).
|
|
*/
|
|
#define __HAVE_ARCH_HUGE_PTEP_GET
|
|
static inline pte_t huge_ptep_get(struct mm_struct *mm, unsigned long addr, pte_t *ptep)
|
|
{
|
|
pte_t retval = *ptep;
|
|
if (pte_val(retval))
|
|
pte_val(retval) |= L_PTE_VALID;
|
|
return retval;
|
|
}
|
|
|
|
#endif /* _ASM_ARM_HUGETLB_3LEVEL_H */
|