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

uaccess_32.h (1006B)


      1/* SPDX-License-Identifier: GPL-2.0 */
      2#ifndef _ASM_X86_UACCESS_32_H
      3#define _ASM_X86_UACCESS_32_H
      4
      5/*
      6 * User space memory access functions
      7 */
      8#include <linux/string.h>
      9#include <asm/asm.h>
     10#include <asm/page.h>
     11
     12unsigned long __must_check __copy_user_ll
     13		(void *to, const void *from, unsigned long n);
     14unsigned long __must_check __copy_from_user_ll_nocache_nozero
     15		(void *to, const void __user *from, unsigned long n);
     16
     17static __always_inline unsigned long __must_check
     18raw_copy_to_user(void __user *to, const void *from, unsigned long n)
     19{
     20	return __copy_user_ll((__force void *)to, from, n);
     21}
     22
     23static __always_inline unsigned long
     24raw_copy_from_user(void *to, const void __user *from, unsigned long n)
     25{
     26	return __copy_user_ll(to, (__force const void *)from, n);
     27}
     28
     29static __always_inline unsigned long
     30__copy_from_user_inatomic_nocache(void *to, const void __user *from,
     31				  unsigned long n)
     32{
     33       return __copy_from_user_ll_nocache_nozero(to, from, n);
     34}
     35
     36#endif /* _ASM_X86_UACCESS_32_H */