pgtable.h (2b1333b80885b896807ffb6ccf4bc21d29aa65e0) pgtable.h (893dea9ccd08dab924839354aba21d4ed7a9abc0)
1/* SPDX-License-Identifier: GPL-2.0-only */
2/*
3 * Copyright (C) 2012 ARM Ltd.
4 */
5#ifndef __ASM_PGTABLE_H
6#define __ASM_PGTABLE_H
7
8#include <asm/bug.h>

--- 413 unchanged lines hidden (view full) ---

422 return pte_val(pte) & PTE_SWP_EXCLUSIVE;
423}
424
425static inline pte_t pte_swp_clear_exclusive(pte_t pte)
426{
427 return clear_pte_bit(pte, __pgprot(PTE_SWP_EXCLUSIVE));
428}
429
1/* SPDX-License-Identifier: GPL-2.0-only */
2/*
3 * Copyright (C) 2012 ARM Ltd.
4 */
5#ifndef __ASM_PGTABLE_H
6#define __ASM_PGTABLE_H
7
8#include <asm/bug.h>

--- 413 unchanged lines hidden (view full) ---

422 return pte_val(pte) & PTE_SWP_EXCLUSIVE;
423}
424
425static inline pte_t pte_swp_clear_exclusive(pte_t pte)
426{
427 return clear_pte_bit(pte, __pgprot(PTE_SWP_EXCLUSIVE));
428}
429
430/*
431 * Select all bits except the pfn
432 */
433static inline pgprot_t pte_pgprot(pte_t pte)
434{
435 unsigned long pfn = pte_pfn(pte);
436
437 return __pgprot(pte_val(pfn_pte(pfn, __pgprot(0))) ^ pte_val(pte));
438}
439
430#ifdef CONFIG_NUMA_BALANCING
431/*
432 * See the comment in include/linux/pgtable.h
433 */
434static inline int pte_protnone(pte_t pte)
435{
436 return (pte_val(pte) & (PTE_VALID | PTE_PROT_NONE)) == PTE_PROT_NONE;
437}

--- 659 unchanged lines hidden ---
440#ifdef CONFIG_NUMA_BALANCING
441/*
442 * See the comment in include/linux/pgtable.h
443 */
444static inline int pte_protnone(pte_t pte)
445{
446 return (pte_val(pte) & (PTE_VALID | PTE_PROT_NONE)) == PTE_PROT_NONE;
447}

--- 659 unchanged lines hidden ---