cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

hugetlb.h (932B)


      1/* SPDX-License-Identifier: GPL-2.0 */
      2#ifndef _ASM_SH_HUGETLB_H
      3#define _ASM_SH_HUGETLB_H
      4
      5#include <asm/cacheflush.h>
      6#include <asm/page.h>
      7
      8/*
      9 * If the arch doesn't supply something else, assume that hugepage
     10 * size aligned regions are ok without further preparation.
     11 */
     12#define __HAVE_ARCH_PREPARE_HUGEPAGE_RANGE
     13static inline int prepare_hugepage_range(struct file *file,
     14			unsigned long addr, unsigned long len)
     15{
     16	if (len & ~HPAGE_MASK)
     17		return -EINVAL;
     18	if (addr & ~HPAGE_MASK)
     19		return -EINVAL;
     20	return 0;
     21}
     22
     23#define __HAVE_ARCH_HUGE_PTEP_CLEAR_FLUSH
     24static inline pte_t huge_ptep_clear_flush(struct vm_area_struct *vma,
     25					  unsigned long addr, pte_t *ptep)
     26{
     27	return *ptep;
     28}
     29
     30static inline void arch_clear_hugepage_flags(struct page *page)
     31{
     32	clear_bit(PG_dcache_clean, &page->flags);
     33}
     34#define arch_clear_hugepage_flags arch_clear_hugepage_flags
     35
     36#include <asm-generic/hugetlb.h>
     37
     38#endif /* _ASM_SH_HUGETLB_H */