linux_dsm_epyc7002/arch/mn10300/include/uapi/asm/ptrace.h
Greg Kroah-Hartman e2be04c7f9 License cleanup: add SPDX license identifier to uapi header files with a license
Many user space API headers have licensing information, which is either
incomplete, badly formatted or just a shorthand for referring to the
license under which the file is supposed to be.  This makes it hard for
compliance tools to determine the correct license.

Update these files with an SPDX license identifier.  The identifier was
chosen based on the license information in the file.

GPL/LGPL licensed headers get the matching GPL/LGPL SPDX license
identifier with the added 'WITH Linux-syscall-note' exception, which is
the officially assigned exception identifier for the kernel syscall
exception:

   NOTE! This copyright does *not* cover user programs that use kernel
   services by normal system calls - this is merely considered normal use
   of the kernel, and does *not* fall under the heading of "derived work".

This exception makes it possible to include GPL headers into non GPL
code, without confusing license compliance tools.

Headers which have either explicit dual licensing or are just licensed
under a non GPL license are updated with the corresponding SPDX
identifier and the GPLv2 with syscall exception identifier.  The format
is:
        ((GPL-2.0 WITH Linux-syscall-note) OR SPDX-ID-OF-OTHER-LICENSE)

SPDX license identifiers are a legally binding shorthand, which can be
used instead of the full boiler plate text.  The update does not remove
existing license information as this has to be done on a case by case
basis and the copyright holders might have to be consulted. This will
happen in a separate step.

This patch is based on work done by Thomas Gleixner and Kate Stewart and
Philippe Ombredanne.  See the previous patch in this series for the
methodology of how this patch was researched.

Reviewed-by: Kate Stewart <kstewart@linuxfoundation.org>
Reviewed-by: Philippe Ombredanne <pombredanne@nexb.com>
Reviewed-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-11-02 11:20:11 +01:00

86 lines
2.2 KiB
C

/* SPDX-License-Identifier: GPL-2.0+ WITH Linux-syscall-note */
/* MN10300 Exception frame layout and ptrace constants
*
* Copyright (C) 2007 Red Hat, Inc. All Rights Reserved.
* Written by David Howells (dhowells@redhat.com)
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public Licence
* as published by the Free Software Foundation; either version
* 2 of the Licence, or (at your option) any later version.
*/
#ifndef _UAPI_ASM_PTRACE_H
#define _UAPI_ASM_PTRACE_H
#define PT_A3 0
#define PT_A2 1
#define PT_D3 2
#define PT_D2 3
#define PT_MCVF 4
#define PT_MCRL 5
#define PT_MCRH 6
#define PT_MDRQ 7
#define PT_E1 8
#define PT_E0 9
#define PT_E7 10
#define PT_E6 11
#define PT_E5 12
#define PT_E4 13
#define PT_E3 14
#define PT_E2 15
#define PT_SP 16
#define PT_LAR 17
#define PT_LIR 18
#define PT_MDR 19
#define PT_A1 20
#define PT_A0 21
#define PT_D1 22
#define PT_D0 23
#define PT_ORIG_D0 24
#define PT_EPSW 25
#define PT_PC 26
#define NR_PTREGS 27
/*
* This defines the way registers are stored in the event of an exception
* - the strange order is due to the MOVM instruction
*/
struct pt_regs {
unsigned long a3; /* syscall arg 3 */
unsigned long a2; /* syscall arg 4 */
unsigned long d3; /* syscall arg 5 */
unsigned long d2; /* syscall arg 6 */
unsigned long mcvf;
unsigned long mcrl;
unsigned long mcrh;
unsigned long mdrq;
unsigned long e1;
unsigned long e0;
unsigned long e7;
unsigned long e6;
unsigned long e5;
unsigned long e4;
unsigned long e3;
unsigned long e2;
unsigned long sp;
unsigned long lar;
unsigned long lir;
unsigned long mdr;
unsigned long a1;
unsigned long a0; /* syscall arg 1 */
unsigned long d1; /* syscall arg 2 */
unsigned long d0; /* syscall ret */
struct pt_regs *next; /* next frame pointer */
unsigned long orig_d0; /* syscall number */
unsigned long epsw;
unsigned long pc;
};
/* Arbitrarily choose the same ptrace numbers as used by the Sparc code. */
#define PTRACE_GETREGS 12
#define PTRACE_SETREGS 13
#define PTRACE_GETFPREGS 14
#define PTRACE_SETFPREGS 15
#endif /* _UAPI_ASM_PTRACE_H */