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

swsusp.c (711B)


      1// SPDX-License-Identifier: GPL-2.0
      2/*
      3 * swsusp.c - SuperH hibernation support
      4 *
      5 * Copyright (C) 2009 Magnus Damm
      6 */
      7
      8#include <linux/mm.h>
      9#include <linux/sched.h>
     10#include <linux/suspend.h>
     11#include <asm/suspend.h>
     12#include <asm/sections.h>
     13#include <asm/tlbflush.h>
     14#include <asm/page.h>
     15#include <asm/fpu.h>
     16
     17struct swsusp_arch_regs swsusp_arch_regs_cpu0;
     18
     19int pfn_is_nosave(unsigned long pfn)
     20{
     21	unsigned long begin_pfn = __pa(&__nosave_begin) >> PAGE_SHIFT;
     22	unsigned long end_pfn = PAGE_ALIGN(__pa(&__nosave_end)) >> PAGE_SHIFT;
     23
     24	return (pfn >= begin_pfn) && (pfn < end_pfn);
     25}
     26
     27void save_processor_state(void)
     28{
     29	init_fpu(current);
     30}
     31
     32void restore_processor_state(void)
     33{
     34	local_flush_tlb_all();
     35}