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

mmu_context.h (1513B)


      1/*
      2 * Copyright (C) 2010 Tobias Klauser <tklauser@distanz.ch>
      3 * Copyright (C) 1996, 1997, 1998, 1999 by Ralf Baechle
      4 * Copyright (C) 1999 Silicon Graphics, Inc.
      5 *
      6 * based on MIPS asm/mmu_context.h
      7 *
      8 * This file is subject to the terms and conditions of the GNU General Public
      9 * License.  See the file "COPYING" in the main directory of this archive
     10 * for more details.
     11 */
     12
     13#ifndef _ASM_NIOS2_MMU_CONTEXT_H
     14#define _ASM_NIOS2_MMU_CONTEXT_H
     15
     16#include <linux/mm_types.h>
     17
     18#include <asm-generic/mm_hooks.h>
     19
     20extern void mmu_context_init(void);
     21extern unsigned long get_pid_from_context(mm_context_t *ctx);
     22
     23/*
     24 * For the fast tlb miss handlers, we keep a pointer to the current pgd.
     25 * processor.
     26 */
     27extern pgd_t *pgd_current;
     28
     29/*
     30 * Initialize the context related info for a new mm_struct instance.
     31 *
     32 * Set all new contexts to 0, that way the generation will never match
     33 * the currently running generation when this context is switched in.
     34 */
     35#define init_new_context init_new_context
     36static inline int init_new_context(struct task_struct *tsk,
     37					struct mm_struct *mm)
     38{
     39	mm->context = 0;
     40	return 0;
     41}
     42
     43void switch_mm(struct mm_struct *prev, struct mm_struct *next,
     44		struct task_struct *tsk);
     45
     46/*
     47 * After we have set current->mm to a new value, this activates
     48 * the context for the new mm so we see the new mappings.
     49 */
     50#define activate_mm activate_mm
     51void activate_mm(struct mm_struct *prev, struct mm_struct *next);
     52
     53#include <asm-generic/mmu_context.h>
     54
     55#endif /* _ASM_NIOS2_MMU_CONTEXT_H */