Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
1/* SPDX-License-Identifier: GPL-2.0-only */
2/*
3 * Copyright (C) 2012 Regents of the University of California
4 */
5
6#ifndef _ASM_RISCV_TLB_H
7#define _ASM_RISCV_TLB_H
8
9struct mmu_gather;
10
11static void tlb_flush(struct mmu_gather *tlb);
12
13#define tlb_flush tlb_flush
14#include <asm-generic/tlb.h>
15
16static inline void tlb_flush(struct mmu_gather *tlb)
17{
18#ifdef CONFIG_MMU
19 if (tlb->fullmm || tlb->need_flush_all)
20 flush_tlb_mm(tlb->mm);
21 else
22 flush_tlb_mm_range(tlb->mm, tlb->start, tlb->end,
23 tlb_get_unmap_size(tlb));
24#endif
25}
26
27#endif /* _ASM_RISCV_TLB_H */