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

sigcontext.h (995B)


      1/* SPDX-License-Identifier: GPL-2.0+ WITH Linux-syscall-note */
      2/*
      3 * Author: Hanlu Li <lihanlu@loongson.cn>
      4 *         Huacai Chen <chenhuacai@loongson.cn>
      5 *
      6 * Copyright (C) 2020-2022 Loongson Technology Corporation Limited
      7 */
      8#ifndef _UAPI_ASM_SIGCONTEXT_H
      9#define _UAPI_ASM_SIGCONTEXT_H
     10
     11#include <linux/types.h>
     12#include <linux/posix_types.h>
     13
     14/* FP context was used */
     15#define SC_USED_FP		(1 << 0)
     16/* Address error was due to memory load */
     17#define SC_ADDRERR_RD		(1 << 30)
     18/* Address error was due to memory store */
     19#define SC_ADDRERR_WR		(1 << 31)
     20
     21struct sigcontext {
     22	__u64	sc_pc;
     23	__u64	sc_regs[32];
     24	__u32	sc_flags;
     25	__u64	sc_extcontext[0] __attribute__((__aligned__(16)));
     26};
     27
     28#define CONTEXT_INFO_ALIGN	16
     29struct sctx_info {
     30	__u32	magic;
     31	__u32	size;
     32	__u64	padding;	/* padding to 16 bytes */
     33};
     34
     35/* FPU context */
     36#define FPU_CTX_MAGIC		0x46505501
     37#define FPU_CTX_ALIGN		8
     38struct fpu_context {
     39	__u64	regs[32];
     40	__u64	fcc;
     41	__u32	fcsr;
     42};
     43
     44#endif /* _UAPI_ASM_SIGCONTEXT_H */