UAPI: (Scripted) Disintegrate arch/s390/include/asm
Signed-off-by: David Howells <dhowells@redhat.com> Acked-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Thomas Gleixner <tglx@linutronix.de> Acked-by: Michael Kerrisk <mtk.manpages@gmail.com> Acked-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com> Acked-by: Dave Jones <davej@redhat.com>
This commit is contained in:
		
					parent
					
						
							
								9e2d8656f5
							
						
					
				
			
			
				commit
				
					
						9807f75955
					
				
			
		
					 59 changed files with 1258 additions and 1149 deletions
				
			
		| 
						 | 
				
			
			@ -1,17 +1,3 @@
 | 
			
		|||
include include/asm-generic/Kbuild.asm
 | 
			
		||||
 | 
			
		||||
header-y += chpid.h
 | 
			
		||||
header-y += chsc.h
 | 
			
		||||
header-y += cmb.h
 | 
			
		||||
header-y += dasd.h
 | 
			
		||||
header-y += debug.h
 | 
			
		||||
header-y += kvm_virtio.h
 | 
			
		||||
header-y += monwriter.h
 | 
			
		||||
header-y += qeth.h
 | 
			
		||||
header-y += schid.h
 | 
			
		||||
header-y += tape390.h
 | 
			
		||||
header-y += ucontext.h
 | 
			
		||||
header-y += vtoc.h
 | 
			
		||||
header-y += zcrypt.h
 | 
			
		||||
 | 
			
		||||
generic-y += clkdev.h
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -2,23 +2,10 @@
 | 
			
		|||
 *    Copyright IBM Corp. 2007
 | 
			
		||||
 *    Author(s): Peter Oberparleiter <peter.oberparleiter@de.ibm.com>
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#ifndef _ASM_S390_CHPID_H
 | 
			
		||||
#define _ASM_S390_CHPID_H
 | 
			
		||||
 | 
			
		||||
#include <linux/string.h>
 | 
			
		||||
#include <linux/types.h>
 | 
			
		||||
 | 
			
		||||
#define __MAX_CHPID 255
 | 
			
		||||
 | 
			
		||||
struct chp_id {
 | 
			
		||||
	u8 reserved1;
 | 
			
		||||
	u8 cssid;
 | 
			
		||||
	u8 reserved2;
 | 
			
		||||
	u8 id;
 | 
			
		||||
} __attribute__((packed));
 | 
			
		||||
 | 
			
		||||
#ifdef __KERNEL__
 | 
			
		||||
#include <uapi/asm/chpid.h>
 | 
			
		||||
#include <asm/cio.h>
 | 
			
		||||
 | 
			
		||||
static inline void chp_id_init(struct chp_id *chpid)
 | 
			
		||||
| 
						 | 
				
			
			@ -49,6 +36,4 @@ static inline int chp_id_is_valid(struct chp_id *chpid)
 | 
			
		|||
 | 
			
		||||
#define chp_id_for_each(c) \
 | 
			
		||||
	for (chp_id_init(c); chp_id_is_valid(c); chp_id_next(c))
 | 
			
		||||
#endif /* __KERNEL */
 | 
			
		||||
 | 
			
		||||
#endif /* _ASM_S390_CHPID_H */
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,61 +1,12 @@
 | 
			
		|||
#ifndef S390_CMB_H
 | 
			
		||||
#define S390_CMB_H
 | 
			
		||||
 | 
			
		||||
#include <linux/types.h>
 | 
			
		||||
#include <uapi/asm/cmb.h>
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * struct cmbdata - channel measurement block data for user space
 | 
			
		||||
 * @size: size of the stored data
 | 
			
		||||
 * @elapsed_time: time since last sampling
 | 
			
		||||
 * @ssch_rsch_count: number of ssch and rsch
 | 
			
		||||
 * @sample_count: number of samples
 | 
			
		||||
 * @device_connect_time: time of device connect
 | 
			
		||||
 * @function_pending_time: time of function pending
 | 
			
		||||
 * @device_disconnect_time: time of device disconnect
 | 
			
		||||
 * @control_unit_queuing_time: time of control unit queuing
 | 
			
		||||
 * @device_active_only_time: time of device active only
 | 
			
		||||
 * @device_busy_time: time of device busy (ext. format)
 | 
			
		||||
 * @initial_command_response_time: initial command response time (ext. format)
 | 
			
		||||
 *
 | 
			
		||||
 * All values are stored as 64 bit for simplicity, especially
 | 
			
		||||
 * in 32 bit emulation mode. All time values are normalized to
 | 
			
		||||
 * nanoseconds.
 | 
			
		||||
 * Currently, two formats are known, which differ by the size of
 | 
			
		||||
 * this structure, i.e. the last two members are only set when
 | 
			
		||||
 * the extended channel measurement facility (first shipped in
 | 
			
		||||
 * z990 machines) is activated.
 | 
			
		||||
 * Potentially, more fields could be added, which would result in a
 | 
			
		||||
 * new ioctl number.
 | 
			
		||||
 */
 | 
			
		||||
struct cmbdata {
 | 
			
		||||
	__u64 size;
 | 
			
		||||
	__u64 elapsed_time;
 | 
			
		||||
 /* basic and exended format: */
 | 
			
		||||
	__u64 ssch_rsch_count;
 | 
			
		||||
	__u64 sample_count;
 | 
			
		||||
	__u64 device_connect_time;
 | 
			
		||||
	__u64 function_pending_time;
 | 
			
		||||
	__u64 device_disconnect_time;
 | 
			
		||||
	__u64 control_unit_queuing_time;
 | 
			
		||||
	__u64 device_active_only_time;
 | 
			
		||||
 /* extended format only: */
 | 
			
		||||
	__u64 device_busy_time;
 | 
			
		||||
	__u64 initial_command_response_time;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
/* enable channel measurement */
 | 
			
		||||
#define BIODASDCMFENABLE	_IO(DASD_IOCTL_LETTER, 32)
 | 
			
		||||
/* enable channel measurement */
 | 
			
		||||
#define BIODASDCMFDISABLE	_IO(DASD_IOCTL_LETTER, 33)
 | 
			
		||||
/* read channel measurement data */
 | 
			
		||||
#define BIODASDREADALLCMB	_IOWR(DASD_IOCTL_LETTER, 33, struct cmbdata)
 | 
			
		||||
 | 
			
		||||
#ifdef __KERNEL__
 | 
			
		||||
struct ccw_device;
 | 
			
		||||
extern int enable_cmf(struct ccw_device *cdev);
 | 
			
		||||
extern int disable_cmf(struct ccw_device *cdev);
 | 
			
		||||
extern u64 cmf_read(struct ccw_device *cdev, int index);
 | 
			
		||||
extern int cmf_readall(struct ccw_device *cdev, struct cmbdata *data);
 | 
			
		||||
 | 
			
		||||
#endif /* __KERNEL__ */
 | 
			
		||||
#endif /* S390_CMB_H */
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -3,39 +3,14 @@
 | 
			
		|||
 *
 | 
			
		||||
 *    Copyright IBM Corp. 1999, 2000
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#ifndef DEBUG_H
 | 
			
		||||
#define DEBUG_H
 | 
			
		||||
 | 
			
		||||
#include <linux/fs.h>
 | 
			
		||||
 | 
			
		||||
/* Note:
 | 
			
		||||
 * struct __debug_entry must be defined outside of #ifdef __KERNEL__ 
 | 
			
		||||
 * in order to allow a user program to analyze the 'raw'-view.
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
struct __debug_entry{
 | 
			
		||||
        union {
 | 
			
		||||
                struct {
 | 
			
		||||
                        unsigned long long clock:52;
 | 
			
		||||
                        unsigned long long exception:1;
 | 
			
		||||
                        unsigned long long level:3;
 | 
			
		||||
                        unsigned long long cpuid:8;
 | 
			
		||||
                } fields;
 | 
			
		||||
 | 
			
		||||
                unsigned long long stck;
 | 
			
		||||
        } id;
 | 
			
		||||
        void* caller;
 | 
			
		||||
} __attribute__((packed));
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#define __DEBUG_FEATURE_VERSION      2  /* version of debug feature */
 | 
			
		||||
 | 
			
		||||
#ifdef __KERNEL__
 | 
			
		||||
#include <linux/string.h>
 | 
			
		||||
#include <linux/spinlock.h>
 | 
			
		||||
#include <linux/kernel.h>
 | 
			
		||||
#include <linux/time.h>
 | 
			
		||||
#include <uapi/asm/debug.h>
 | 
			
		||||
 | 
			
		||||
#define DEBUG_MAX_LEVEL            6  /* debug levels range from 0 to 6 */
 | 
			
		||||
#define DEBUG_OFF_LEVEL            -1 /* level where debug is switched off */
 | 
			
		||||
| 
						 | 
				
			
			@ -254,5 +229,4 @@ int debug_unregister_view(debug_info_t* id, struct debug_view* view);
 | 
			
		|||
#define PRINT_FATAL(x...) printk ( KERN_DEBUG PRINTK_HEADER x )
 | 
			
		||||
#endif				/* DASD_DEBUG */
 | 
			
		||||
 | 
			
		||||
#endif				/* __KERNEL__ */
 | 
			
		||||
#endif				/* DEBUG_H */
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -9,12 +9,6 @@
 | 
			
		|||
 *
 | 
			
		||||
 *    Author(s): Christian Borntraeger <borntraeger@de.ibm.com>
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#ifndef __S390_KVM_PARA_H
 | 
			
		||||
#define __S390_KVM_PARA_H
 | 
			
		||||
 | 
			
		||||
#ifdef __KERNEL__
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * Hypercalls for KVM on s390. The calling convention is similar to the
 | 
			
		||||
 * s390 ABI, so we use R2-R6 for parameters 1-5. In addition we use R1
 | 
			
		||||
| 
						 | 
				
			
			@ -29,6 +23,12 @@
 | 
			
		|||
 *
 | 
			
		||||
 * This work is licensed under the terms of the GNU GPL, version 2.
 | 
			
		||||
 */
 | 
			
		||||
#ifndef __S390_KVM_PARA_H
 | 
			
		||||
#define __S390_KVM_PARA_H
 | 
			
		||||
 | 
			
		||||
#include <uapi/asm/kvm_para.h>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
static inline long kvm_hypercall0(unsigned long nr)
 | 
			
		||||
{
 | 
			
		||||
| 
						 | 
				
			
			@ -154,6 +154,4 @@ static inline bool kvm_check_and_clear_guest_paused(void)
 | 
			
		|||
	return false;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#endif /* __S390_KVM_PARA_H */
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -3,17 +3,13 @@
 | 
			
		|||
 *
 | 
			
		||||
 *  Derived from "include/asm-i386/mman.h"
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#ifndef __S390_MMAN_H__
 | 
			
		||||
#define __S390_MMAN_H__
 | 
			
		||||
 | 
			
		||||
#include <asm-generic/mman.h>
 | 
			
		||||
#include <uapi/asm/mman.h>
 | 
			
		||||
 | 
			
		||||
#if defined(__KERNEL__)
 | 
			
		||||
#if !defined(__ASSEMBLY__) && defined(CONFIG_64BIT)
 | 
			
		||||
int s390_mmap_check(unsigned long addr, unsigned long len);
 | 
			
		||||
#define arch_mmap_check(addr,len,flags)	s390_mmap_check(addr,len)
 | 
			
		||||
#endif
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#endif /* __S390_MMAN_H__ */
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -3,316 +3,17 @@
 | 
			
		|||
 *    Copyright IBM Corp. 1999, 2000
 | 
			
		||||
 *    Author(s): Denis Joseph Barrow (djbarrow@de.ibm.com,barrow_dj@yahoo.com)
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#ifndef _S390_PTRACE_H
 | 
			
		||||
#define _S390_PTRACE_H
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * Offsets in the user_regs_struct. They are used for the ptrace
 | 
			
		||||
 * system call and in entry.S
 | 
			
		||||
 */
 | 
			
		||||
#ifndef __s390x__
 | 
			
		||||
 | 
			
		||||
#define PT_PSWMASK  0x00
 | 
			
		||||
#define PT_PSWADDR  0x04
 | 
			
		||||
#define PT_GPR0     0x08
 | 
			
		||||
#define PT_GPR1     0x0C
 | 
			
		||||
#define PT_GPR2     0x10
 | 
			
		||||
#define PT_GPR3     0x14
 | 
			
		||||
#define PT_GPR4     0x18
 | 
			
		||||
#define PT_GPR5     0x1C
 | 
			
		||||
#define PT_GPR6     0x20
 | 
			
		||||
#define PT_GPR7     0x24
 | 
			
		||||
#define PT_GPR8     0x28
 | 
			
		||||
#define PT_GPR9     0x2C
 | 
			
		||||
#define PT_GPR10    0x30
 | 
			
		||||
#define PT_GPR11    0x34
 | 
			
		||||
#define PT_GPR12    0x38
 | 
			
		||||
#define PT_GPR13    0x3C
 | 
			
		||||
#define PT_GPR14    0x40
 | 
			
		||||
#define PT_GPR15    0x44
 | 
			
		||||
#define PT_ACR0     0x48
 | 
			
		||||
#define PT_ACR1     0x4C
 | 
			
		||||
#define PT_ACR2     0x50
 | 
			
		||||
#define PT_ACR3     0x54
 | 
			
		||||
#define PT_ACR4	    0x58
 | 
			
		||||
#define PT_ACR5	    0x5C
 | 
			
		||||
#define PT_ACR6	    0x60
 | 
			
		||||
#define PT_ACR7	    0x64
 | 
			
		||||
#define PT_ACR8	    0x68
 | 
			
		||||
#define PT_ACR9	    0x6C
 | 
			
		||||
#define PT_ACR10    0x70
 | 
			
		||||
#define PT_ACR11    0x74
 | 
			
		||||
#define PT_ACR12    0x78
 | 
			
		||||
#define PT_ACR13    0x7C
 | 
			
		||||
#define PT_ACR14    0x80
 | 
			
		||||
#define PT_ACR15    0x84
 | 
			
		||||
#define PT_ORIGGPR2 0x88
 | 
			
		||||
#define PT_FPC	    0x90
 | 
			
		||||
/*
 | 
			
		||||
 * A nasty fact of life that the ptrace api
 | 
			
		||||
 * only supports passing of longs.
 | 
			
		||||
 */
 | 
			
		||||
#define PT_FPR0_HI  0x98
 | 
			
		||||
#define PT_FPR0_LO  0x9C
 | 
			
		||||
#define PT_FPR1_HI  0xA0
 | 
			
		||||
#define PT_FPR1_LO  0xA4
 | 
			
		||||
#define PT_FPR2_HI  0xA8
 | 
			
		||||
#define PT_FPR2_LO  0xAC
 | 
			
		||||
#define PT_FPR3_HI  0xB0
 | 
			
		||||
#define PT_FPR3_LO  0xB4
 | 
			
		||||
#define PT_FPR4_HI  0xB8
 | 
			
		||||
#define PT_FPR4_LO  0xBC
 | 
			
		||||
#define PT_FPR5_HI  0xC0
 | 
			
		||||
#define PT_FPR5_LO  0xC4
 | 
			
		||||
#define PT_FPR6_HI  0xC8
 | 
			
		||||
#define PT_FPR6_LO  0xCC
 | 
			
		||||
#define PT_FPR7_HI  0xD0
 | 
			
		||||
#define PT_FPR7_LO  0xD4
 | 
			
		||||
#define PT_FPR8_HI  0xD8
 | 
			
		||||
#define PT_FPR8_LO  0XDC
 | 
			
		||||
#define PT_FPR9_HI  0xE0
 | 
			
		||||
#define PT_FPR9_LO  0xE4
 | 
			
		||||
#define PT_FPR10_HI 0xE8
 | 
			
		||||
#define PT_FPR10_LO 0xEC
 | 
			
		||||
#define PT_FPR11_HI 0xF0
 | 
			
		||||
#define PT_FPR11_LO 0xF4
 | 
			
		||||
#define PT_FPR12_HI 0xF8
 | 
			
		||||
#define PT_FPR12_LO 0xFC
 | 
			
		||||
#define PT_FPR13_HI 0x100
 | 
			
		||||
#define PT_FPR13_LO 0x104
 | 
			
		||||
#define PT_FPR14_HI 0x108
 | 
			
		||||
#define PT_FPR14_LO 0x10C
 | 
			
		||||
#define PT_FPR15_HI 0x110
 | 
			
		||||
#define PT_FPR15_LO 0x114
 | 
			
		||||
#define PT_CR_9	    0x118
 | 
			
		||||
#define PT_CR_10    0x11C
 | 
			
		||||
#define PT_CR_11    0x120
 | 
			
		||||
#define PT_IEEE_IP  0x13C
 | 
			
		||||
#define PT_LASTOFF  PT_IEEE_IP
 | 
			
		||||
#define PT_ENDREGS  0x140-1
 | 
			
		||||
 | 
			
		||||
#define GPR_SIZE	4
 | 
			
		||||
#define CR_SIZE		4
 | 
			
		||||
 | 
			
		||||
#define STACK_FRAME_OVERHEAD	96	/* size of minimum stack frame */
 | 
			
		||||
 | 
			
		||||
#else /* __s390x__ */
 | 
			
		||||
 | 
			
		||||
#define PT_PSWMASK  0x00
 | 
			
		||||
#define PT_PSWADDR  0x08
 | 
			
		||||
#define PT_GPR0     0x10
 | 
			
		||||
#define PT_GPR1     0x18
 | 
			
		||||
#define PT_GPR2     0x20
 | 
			
		||||
#define PT_GPR3     0x28
 | 
			
		||||
#define PT_GPR4     0x30
 | 
			
		||||
#define PT_GPR5     0x38
 | 
			
		||||
#define PT_GPR6     0x40
 | 
			
		||||
#define PT_GPR7     0x48
 | 
			
		||||
#define PT_GPR8     0x50
 | 
			
		||||
#define PT_GPR9     0x58
 | 
			
		||||
#define PT_GPR10    0x60
 | 
			
		||||
#define PT_GPR11    0x68
 | 
			
		||||
#define PT_GPR12    0x70
 | 
			
		||||
#define PT_GPR13    0x78
 | 
			
		||||
#define PT_GPR14    0x80
 | 
			
		||||
#define PT_GPR15    0x88
 | 
			
		||||
#define PT_ACR0     0x90
 | 
			
		||||
#define PT_ACR1     0x94
 | 
			
		||||
#define PT_ACR2     0x98
 | 
			
		||||
#define PT_ACR3     0x9C
 | 
			
		||||
#define PT_ACR4	    0xA0
 | 
			
		||||
#define PT_ACR5	    0xA4
 | 
			
		||||
#define PT_ACR6	    0xA8
 | 
			
		||||
#define PT_ACR7	    0xAC
 | 
			
		||||
#define PT_ACR8	    0xB0
 | 
			
		||||
#define PT_ACR9	    0xB4
 | 
			
		||||
#define PT_ACR10    0xB8
 | 
			
		||||
#define PT_ACR11    0xBC
 | 
			
		||||
#define PT_ACR12    0xC0
 | 
			
		||||
#define PT_ACR13    0xC4
 | 
			
		||||
#define PT_ACR14    0xC8
 | 
			
		||||
#define PT_ACR15    0xCC
 | 
			
		||||
#define PT_ORIGGPR2 0xD0
 | 
			
		||||
#define PT_FPC	    0xD8
 | 
			
		||||
#define PT_FPR0     0xE0
 | 
			
		||||
#define PT_FPR1     0xE8
 | 
			
		||||
#define PT_FPR2     0xF0
 | 
			
		||||
#define PT_FPR3     0xF8
 | 
			
		||||
#define PT_FPR4     0x100
 | 
			
		||||
#define PT_FPR5     0x108
 | 
			
		||||
#define PT_FPR6     0x110
 | 
			
		||||
#define PT_FPR7     0x118
 | 
			
		||||
#define PT_FPR8     0x120
 | 
			
		||||
#define PT_FPR9     0x128
 | 
			
		||||
#define PT_FPR10    0x130
 | 
			
		||||
#define PT_FPR11    0x138
 | 
			
		||||
#define PT_FPR12    0x140
 | 
			
		||||
#define PT_FPR13    0x148
 | 
			
		||||
#define PT_FPR14    0x150
 | 
			
		||||
#define PT_FPR15    0x158
 | 
			
		||||
#define PT_CR_9     0x160
 | 
			
		||||
#define PT_CR_10    0x168
 | 
			
		||||
#define PT_CR_11    0x170
 | 
			
		||||
#define PT_IEEE_IP  0x1A8
 | 
			
		||||
#define PT_LASTOFF  PT_IEEE_IP
 | 
			
		||||
#define PT_ENDREGS  0x1B0-1
 | 
			
		||||
 | 
			
		||||
#define GPR_SIZE	8
 | 
			
		||||
#define CR_SIZE		8
 | 
			
		||||
 | 
			
		||||
#define STACK_FRAME_OVERHEAD    160      /* size of minimum stack frame */
 | 
			
		||||
 | 
			
		||||
#endif /* __s390x__ */
 | 
			
		||||
 | 
			
		||||
#define NUM_GPRS	16
 | 
			
		||||
#define NUM_FPRS	16
 | 
			
		||||
#define NUM_CRS		16
 | 
			
		||||
#define NUM_ACRS	16
 | 
			
		||||
 | 
			
		||||
#define NUM_CR_WORDS	3
 | 
			
		||||
 | 
			
		||||
#define FPR_SIZE	8
 | 
			
		||||
#define FPC_SIZE	4
 | 
			
		||||
#define FPC_PAD_SIZE	4 /* gcc insists on aligning the fpregs */
 | 
			
		||||
#define ACR_SIZE	4
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#define PTRACE_OLDSETOPTIONS         21
 | 
			
		||||
#include <uapi/asm/ptrace.h>
 | 
			
		||||
 | 
			
		||||
#ifndef __ASSEMBLY__
 | 
			
		||||
#include <linux/stddef.h>
 | 
			
		||||
#include <linux/types.h>
 | 
			
		||||
 | 
			
		||||
typedef union
 | 
			
		||||
{
 | 
			
		||||
	float   f;
 | 
			
		||||
	double  d;
 | 
			
		||||
        __u64   ui;
 | 
			
		||||
	struct
 | 
			
		||||
	{
 | 
			
		||||
		__u32 hi;
 | 
			
		||||
		__u32 lo;
 | 
			
		||||
	} fp;
 | 
			
		||||
} freg_t;
 | 
			
		||||
 | 
			
		||||
typedef struct
 | 
			
		||||
{
 | 
			
		||||
	__u32   fpc;
 | 
			
		||||
	freg_t  fprs[NUM_FPRS];              
 | 
			
		||||
} s390_fp_regs;
 | 
			
		||||
 | 
			
		||||
#define FPC_EXCEPTION_MASK      0xF8000000
 | 
			
		||||
#define FPC_FLAGS_MASK          0x00F80000
 | 
			
		||||
#define FPC_DXC_MASK            0x0000FF00
 | 
			
		||||
#define FPC_RM_MASK             0x00000003
 | 
			
		||||
#define FPC_VALID_MASK          0xF8F8FF03
 | 
			
		||||
 | 
			
		||||
/* this typedef defines how a Program Status Word looks like */
 | 
			
		||||
typedef struct 
 | 
			
		||||
{
 | 
			
		||||
        unsigned long mask;
 | 
			
		||||
        unsigned long addr;
 | 
			
		||||
} __attribute__ ((aligned(8))) psw_t;
 | 
			
		||||
 | 
			
		||||
typedef struct
 | 
			
		||||
{
 | 
			
		||||
	__u32	mask;
 | 
			
		||||
	__u32	addr;
 | 
			
		||||
} __attribute__ ((aligned(8))) psw_compat_t;
 | 
			
		||||
 | 
			
		||||
#ifndef __s390x__
 | 
			
		||||
 | 
			
		||||
#define PSW_MASK_PER		0x40000000UL
 | 
			
		||||
#define PSW_MASK_DAT		0x04000000UL
 | 
			
		||||
#define PSW_MASK_IO		0x02000000UL
 | 
			
		||||
#define PSW_MASK_EXT		0x01000000UL
 | 
			
		||||
#define PSW_MASK_KEY		0x00F00000UL
 | 
			
		||||
#define PSW_MASK_BASE		0x00080000UL	/* always one */
 | 
			
		||||
#define PSW_MASK_MCHECK		0x00040000UL
 | 
			
		||||
#define PSW_MASK_WAIT		0x00020000UL
 | 
			
		||||
#define PSW_MASK_PSTATE		0x00010000UL
 | 
			
		||||
#define PSW_MASK_ASC		0x0000C000UL
 | 
			
		||||
#define PSW_MASK_CC		0x00003000UL
 | 
			
		||||
#define PSW_MASK_PM		0x00000F00UL
 | 
			
		||||
#define PSW_MASK_RI		0x00000000UL
 | 
			
		||||
#define PSW_MASK_EA		0x00000000UL
 | 
			
		||||
#define PSW_MASK_BA		0x00000000UL
 | 
			
		||||
 | 
			
		||||
#define PSW_MASK_USER		0x00003F00UL
 | 
			
		||||
 | 
			
		||||
#define PSW_ADDR_AMODE		0x80000000UL
 | 
			
		||||
#define PSW_ADDR_INSN		0x7FFFFFFFUL
 | 
			
		||||
 | 
			
		||||
#define PSW_DEFAULT_KEY		(((unsigned long) PAGE_DEFAULT_ACC) << 20)
 | 
			
		||||
 | 
			
		||||
#define PSW_ASC_PRIMARY		0x00000000UL
 | 
			
		||||
#define PSW_ASC_ACCREG		0x00004000UL
 | 
			
		||||
#define PSW_ASC_SECONDARY	0x00008000UL
 | 
			
		||||
#define PSW_ASC_HOME		0x0000C000UL
 | 
			
		||||
 | 
			
		||||
#else /* __s390x__ */
 | 
			
		||||
 | 
			
		||||
#define PSW_MASK_PER		0x4000000000000000UL
 | 
			
		||||
#define PSW_MASK_DAT		0x0400000000000000UL
 | 
			
		||||
#define PSW_MASK_IO		0x0200000000000000UL
 | 
			
		||||
#define PSW_MASK_EXT		0x0100000000000000UL
 | 
			
		||||
#define PSW_MASK_BASE		0x0000000000000000UL
 | 
			
		||||
#define PSW_MASK_KEY		0x00F0000000000000UL
 | 
			
		||||
#define PSW_MASK_MCHECK		0x0004000000000000UL
 | 
			
		||||
#define PSW_MASK_WAIT		0x0002000000000000UL
 | 
			
		||||
#define PSW_MASK_PSTATE		0x0001000000000000UL
 | 
			
		||||
#define PSW_MASK_ASC		0x0000C00000000000UL
 | 
			
		||||
#define PSW_MASK_CC		0x0000300000000000UL
 | 
			
		||||
#define PSW_MASK_PM		0x00000F0000000000UL
 | 
			
		||||
#define PSW_MASK_RI		0x0000008000000000UL
 | 
			
		||||
#define PSW_MASK_EA		0x0000000100000000UL
 | 
			
		||||
#define PSW_MASK_BA		0x0000000080000000UL
 | 
			
		||||
 | 
			
		||||
#define PSW_MASK_USER		0x00003F8180000000UL
 | 
			
		||||
 | 
			
		||||
#define PSW_ADDR_AMODE		0x0000000000000000UL
 | 
			
		||||
#define PSW_ADDR_INSN		0xFFFFFFFFFFFFFFFFUL
 | 
			
		||||
 | 
			
		||||
#define PSW_DEFAULT_KEY		(((unsigned long) PAGE_DEFAULT_ACC) << 52)
 | 
			
		||||
 | 
			
		||||
#define PSW_ASC_PRIMARY		0x0000000000000000UL
 | 
			
		||||
#define PSW_ASC_ACCREG		0x0000400000000000UL
 | 
			
		||||
#define PSW_ASC_SECONDARY	0x0000800000000000UL
 | 
			
		||||
#define PSW_ASC_HOME		0x0000C00000000000UL
 | 
			
		||||
 | 
			
		||||
#endif /* __s390x__ */
 | 
			
		||||
 | 
			
		||||
#ifdef __KERNEL__
 | 
			
		||||
extern long psw_kernel_bits;
 | 
			
		||||
extern long psw_user_bits;
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * The s390_regs structure is used to define the elf_gregset_t.
 | 
			
		||||
 */
 | 
			
		||||
typedef struct
 | 
			
		||||
{
 | 
			
		||||
	psw_t psw;
 | 
			
		||||
	unsigned long gprs[NUM_GPRS];
 | 
			
		||||
	unsigned int  acrs[NUM_ACRS];
 | 
			
		||||
	unsigned long orig_gpr2;
 | 
			
		||||
} s390_regs;
 | 
			
		||||
 | 
			
		||||
typedef struct
 | 
			
		||||
{
 | 
			
		||||
	psw_compat_t	psw;
 | 
			
		||||
	__u32		gprs[NUM_GPRS];
 | 
			
		||||
	__u32		acrs[NUM_ACRS];
 | 
			
		||||
	__u32		orig_gpr2;
 | 
			
		||||
} s390_compat_regs;
 | 
			
		||||
 | 
			
		||||
typedef struct
 | 
			
		||||
{
 | 
			
		||||
	__u32		gprs_high[NUM_GPRS];
 | 
			
		||||
} s390_compat_regs_high;
 | 
			
		||||
 | 
			
		||||
#ifdef __KERNEL__
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * The pt_regs struct defines the way the registers are stored on
 | 
			
		||||
| 
						 | 
				
			
			@ -376,167 +77,8 @@ struct per_struct_kernel {
 | 
			
		|||
#define PER_CONTROL_SUSPENSION		0x00400000UL
 | 
			
		||||
#define PER_CONTROL_ALTERATION		0x00200000UL
 | 
			
		||||
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * Now for the user space program event recording (trace) definitions.
 | 
			
		||||
 * The following structures are used only for the ptrace interface, don't
 | 
			
		||||
 * touch or even look at it if you don't want to modify the user-space
 | 
			
		||||
 * ptrace interface. In particular stay away from it for in-kernel PER.
 | 
			
		||||
 */
 | 
			
		||||
typedef struct
 | 
			
		||||
{
 | 
			
		||||
	unsigned long cr[NUM_CR_WORDS];
 | 
			
		||||
} per_cr_words;
 | 
			
		||||
 | 
			
		||||
#define PER_EM_MASK 0xE8000000UL
 | 
			
		||||
 | 
			
		||||
typedef	struct
 | 
			
		||||
{
 | 
			
		||||
#ifdef __s390x__
 | 
			
		||||
	unsigned                       : 32;
 | 
			
		||||
#endif /* __s390x__ */
 | 
			
		||||
	unsigned em_branching          : 1;
 | 
			
		||||
	unsigned em_instruction_fetch  : 1;
 | 
			
		||||
	/*
 | 
			
		||||
	 * Switching on storage alteration automatically fixes
 | 
			
		||||
	 * the storage alteration event bit in the users std.
 | 
			
		||||
	 */
 | 
			
		||||
	unsigned em_storage_alteration : 1;
 | 
			
		||||
	unsigned em_gpr_alt_unused     : 1;
 | 
			
		||||
	unsigned em_store_real_address : 1;
 | 
			
		||||
	unsigned                       : 3;
 | 
			
		||||
	unsigned branch_addr_ctl       : 1;
 | 
			
		||||
	unsigned                       : 1;
 | 
			
		||||
	unsigned storage_alt_space_ctl : 1;
 | 
			
		||||
	unsigned                       : 21;
 | 
			
		||||
	unsigned long starting_addr;
 | 
			
		||||
	unsigned long ending_addr;
 | 
			
		||||
} per_cr_bits;
 | 
			
		||||
 | 
			
		||||
typedef struct
 | 
			
		||||
{
 | 
			
		||||
	unsigned short perc_atmid;
 | 
			
		||||
	unsigned long address;
 | 
			
		||||
	unsigned char access_id;
 | 
			
		||||
} per_lowcore_words;
 | 
			
		||||
 | 
			
		||||
typedef struct
 | 
			
		||||
{
 | 
			
		||||
	unsigned perc_branching          : 1;
 | 
			
		||||
	unsigned perc_instruction_fetch  : 1;
 | 
			
		||||
	unsigned perc_storage_alteration : 1;
 | 
			
		||||
	unsigned perc_gpr_alt_unused     : 1;
 | 
			
		||||
	unsigned perc_store_real_address : 1;
 | 
			
		||||
	unsigned                         : 3;
 | 
			
		||||
	unsigned atmid_psw_bit_31        : 1;
 | 
			
		||||
	unsigned atmid_validity_bit      : 1;
 | 
			
		||||
	unsigned atmid_psw_bit_32        : 1;
 | 
			
		||||
	unsigned atmid_psw_bit_5         : 1;
 | 
			
		||||
	unsigned atmid_psw_bit_16        : 1;
 | 
			
		||||
	unsigned atmid_psw_bit_17        : 1;
 | 
			
		||||
	unsigned si                      : 2;
 | 
			
		||||
	unsigned long address;
 | 
			
		||||
	unsigned                         : 4;
 | 
			
		||||
	unsigned access_id               : 4;
 | 
			
		||||
} per_lowcore_bits;
 | 
			
		||||
 | 
			
		||||
typedef struct
 | 
			
		||||
{
 | 
			
		||||
	union {
 | 
			
		||||
		per_cr_words   words;
 | 
			
		||||
		per_cr_bits    bits;
 | 
			
		||||
	} control_regs;
 | 
			
		||||
	/*
 | 
			
		||||
	 * Use these flags instead of setting em_instruction_fetch
 | 
			
		||||
	 * directly they are used so that single stepping can be
 | 
			
		||||
	 * switched on & off while not affecting other tracing
 | 
			
		||||
	 */
 | 
			
		||||
	unsigned  single_step       : 1;
 | 
			
		||||
	unsigned  instruction_fetch : 1;
 | 
			
		||||
	unsigned                    : 30;
 | 
			
		||||
	/*
 | 
			
		||||
	 * These addresses are copied into cr10 & cr11 if single
 | 
			
		||||
	 * stepping is switched off
 | 
			
		||||
	 */
 | 
			
		||||
	unsigned long starting_addr;
 | 
			
		||||
	unsigned long ending_addr;
 | 
			
		||||
	union {
 | 
			
		||||
		per_lowcore_words words;
 | 
			
		||||
		per_lowcore_bits  bits;
 | 
			
		||||
	} lowcore; 
 | 
			
		||||
} per_struct;
 | 
			
		||||
 | 
			
		||||
typedef struct
 | 
			
		||||
{
 | 
			
		||||
	unsigned int  len;
 | 
			
		||||
	unsigned long kernel_addr;
 | 
			
		||||
	unsigned long process_addr;
 | 
			
		||||
} ptrace_area;
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * S/390 specific non posix ptrace requests. I chose unusual values so
 | 
			
		||||
 * they are unlikely to clash with future ptrace definitions.
 | 
			
		||||
 */
 | 
			
		||||
#define PTRACE_PEEKUSR_AREA           0x5000
 | 
			
		||||
#define PTRACE_POKEUSR_AREA           0x5001
 | 
			
		||||
#define PTRACE_PEEKTEXT_AREA	      0x5002
 | 
			
		||||
#define PTRACE_PEEKDATA_AREA	      0x5003
 | 
			
		||||
#define PTRACE_POKETEXT_AREA	      0x5004
 | 
			
		||||
#define PTRACE_POKEDATA_AREA 	      0x5005
 | 
			
		||||
#define PTRACE_GET_LAST_BREAK	      0x5006
 | 
			
		||||
#define PTRACE_PEEK_SYSTEM_CALL       0x5007
 | 
			
		||||
#define PTRACE_POKE_SYSTEM_CALL	      0x5008
 | 
			
		||||
#define PTRACE_ENABLE_TE	      0x5009
 | 
			
		||||
#define PTRACE_DISABLE_TE	      0x5010
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * PT_PROT definition is loosely based on hppa bsd definition in
 | 
			
		||||
 * gdb/hppab-nat.c
 | 
			
		||||
 */
 | 
			
		||||
#define PTRACE_PROT                       21
 | 
			
		||||
 | 
			
		||||
typedef enum
 | 
			
		||||
{
 | 
			
		||||
	ptprot_set_access_watchpoint,
 | 
			
		||||
	ptprot_set_write_watchpoint,
 | 
			
		||||
	ptprot_disable_watchpoint
 | 
			
		||||
} ptprot_flags;
 | 
			
		||||
 | 
			
		||||
typedef struct
 | 
			
		||||
{
 | 
			
		||||
	unsigned long lowaddr;
 | 
			
		||||
	unsigned long hiaddr;
 | 
			
		||||
	ptprot_flags prot;
 | 
			
		||||
} ptprot_area;                     
 | 
			
		||||
 | 
			
		||||
/* Sequence of bytes for breakpoint illegal instruction.  */
 | 
			
		||||
#define S390_BREAKPOINT     {0x0,0x1}
 | 
			
		||||
#define S390_BREAKPOINT_U16 ((__u16)0x0001)
 | 
			
		||||
#define S390_SYSCALL_OPCODE ((__u16)0x0a00)
 | 
			
		||||
#define S390_SYSCALL_SIZE   2
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * The user_regs_struct defines the way the user registers are
 | 
			
		||||
 * store on the stack for signal handling.
 | 
			
		||||
 */
 | 
			
		||||
struct user_regs_struct
 | 
			
		||||
{
 | 
			
		||||
	psw_t psw;
 | 
			
		||||
	unsigned long gprs[NUM_GPRS];
 | 
			
		||||
	unsigned int  acrs[NUM_ACRS];
 | 
			
		||||
	unsigned long orig_gpr2;
 | 
			
		||||
	s390_fp_regs fp_regs;
 | 
			
		||||
	/*
 | 
			
		||||
	 * These per registers are in here so that gdb can modify them
 | 
			
		||||
	 * itself as there is no "official" ptrace interface for hardware
 | 
			
		||||
	 * watchpoints. This is the way intel does it.
 | 
			
		||||
	 */
 | 
			
		||||
	per_struct per_info;
 | 
			
		||||
	unsigned long ieee_instruction_pointer;	/* obsolete, always 0 */
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
#ifdef __KERNEL__
 | 
			
		||||
/*
 | 
			
		||||
 * These are defined as per linux/ptrace.h, which see.
 | 
			
		||||
 */
 | 
			
		||||
| 
						 | 
				
			
			@ -562,7 +104,5 @@ static inline unsigned long kernel_stack_pointer(struct pt_regs *regs)
 | 
			
		|||
	return regs->gprs[15] & PSW_ADDR_INSN;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#endif /* __KERNEL__ */
 | 
			
		||||
#endif /* __ASSEMBLY__ */
 | 
			
		||||
 | 
			
		||||
#endif /* _S390_PTRACE_H */
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,19 +1,8 @@
 | 
			
		|||
#ifndef ASM_SCHID_H
 | 
			
		||||
#define ASM_SCHID_H
 | 
			
		||||
 | 
			
		||||
#include <linux/types.h>
 | 
			
		||||
 | 
			
		||||
struct subchannel_id {
 | 
			
		||||
	__u32 cssid : 8;
 | 
			
		||||
	__u32 : 4;
 | 
			
		||||
	__u32 m : 1;
 | 
			
		||||
	__u32 ssid : 2;
 | 
			
		||||
	__u32 one : 1;
 | 
			
		||||
	__u32 sch_no : 16;
 | 
			
		||||
} __attribute__ ((packed, aligned(4)));
 | 
			
		||||
 | 
			
		||||
#ifdef __KERNEL__
 | 
			
		||||
#include <linux/string.h>
 | 
			
		||||
#include <uapi/asm/schid.h>
 | 
			
		||||
 | 
			
		||||
/* Helper function for sane state of pre-allocated subchannel_id. */
 | 
			
		||||
static inline void
 | 
			
		||||
| 
						 | 
				
			
			@ -29,6 +18,4 @@ schid_equal(struct subchannel_id *schid1, struct subchannel_id *schid2)
 | 
			
		|||
	return !memcmp(schid1, schid2, sizeof(struct subchannel_id));
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#endif /* __KERNEL__ */
 | 
			
		||||
 | 
			
		||||
#endif /* ASM_SCHID_H */
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -2,15 +2,11 @@
 | 
			
		|||
 *  S390 version
 | 
			
		||||
 *    Copyright IBM Corp. 1999, 2010
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#ifndef _ASM_S390_SETUP_H
 | 
			
		||||
#define _ASM_S390_SETUP_H
 | 
			
		||||
 | 
			
		||||
#define COMMAND_LINE_SIZE	4096
 | 
			
		||||
#include <uapi/asm/setup.h>
 | 
			
		||||
 | 
			
		||||
#define ARCH_COMMAND_LINE_SIZE	896
 | 
			
		||||
 | 
			
		||||
#ifdef __KERNEL__
 | 
			
		||||
 | 
			
		||||
#define PARMAREA		0x10400
 | 
			
		||||
#define MEMORY_CHUNKS		256
 | 
			
		||||
| 
						 | 
				
			
			@ -173,5 +169,4 @@ extern void (*_machine_power_off)(void);
 | 
			
		|||
#define COMMAND_LINE      0x10480
 | 
			
		||||
 | 
			
		||||
#endif /* __ASSEMBLY__ */
 | 
			
		||||
#endif /* __KERNEL__ */
 | 
			
		||||
#endif /* _ASM_S390_SETUP_H */
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -3,18 +3,11 @@
 | 
			
		|||
 *
 | 
			
		||||
 *  Derived from "include/asm-i386/signal.h"
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#ifndef _ASMS390_SIGNAL_H
 | 
			
		||||
#define _ASMS390_SIGNAL_H
 | 
			
		||||
 | 
			
		||||
#include <linux/types.h>
 | 
			
		||||
#include <linux/time.h>
 | 
			
		||||
#include <uapi/asm/signal.h>
 | 
			
		||||
 | 
			
		||||
/* Avoid too many header ordering problems.  */
 | 
			
		||||
struct siginfo;
 | 
			
		||||
struct pt_regs;
 | 
			
		||||
 | 
			
		||||
#ifdef __KERNEL__
 | 
			
		||||
/* Most things should be clean enough to redefine this at will, if care
 | 
			
		||||
   is taken to make libc match.  */
 | 
			
		||||
#include <asm/sigcontext.h>
 | 
			
		||||
| 
						 | 
				
			
			@ -28,94 +21,6 @@ typedef struct {
 | 
			
		|||
        unsigned long sig[_NSIG_WORDS];
 | 
			
		||||
} sigset_t;
 | 
			
		||||
 | 
			
		||||
#else
 | 
			
		||||
/* Here we must cater to libcs that poke about in kernel headers.  */
 | 
			
		||||
 | 
			
		||||
#define NSIG            32
 | 
			
		||||
typedef unsigned long sigset_t;
 | 
			
		||||
 | 
			
		||||
#endif /* __KERNEL__ */
 | 
			
		||||
 | 
			
		||||
#define SIGHUP           1
 | 
			
		||||
#define SIGINT           2
 | 
			
		||||
#define SIGQUIT          3
 | 
			
		||||
#define SIGILL           4
 | 
			
		||||
#define SIGTRAP          5
 | 
			
		||||
#define SIGABRT          6
 | 
			
		||||
#define SIGIOT           6
 | 
			
		||||
#define SIGBUS           7
 | 
			
		||||
#define SIGFPE           8
 | 
			
		||||
#define SIGKILL          9
 | 
			
		||||
#define SIGUSR1         10
 | 
			
		||||
#define SIGSEGV         11
 | 
			
		||||
#define SIGUSR2         12
 | 
			
		||||
#define SIGPIPE         13
 | 
			
		||||
#define SIGALRM         14
 | 
			
		||||
#define SIGTERM         15
 | 
			
		||||
#define SIGSTKFLT       16
 | 
			
		||||
#define SIGCHLD         17
 | 
			
		||||
#define SIGCONT         18
 | 
			
		||||
#define SIGSTOP         19
 | 
			
		||||
#define SIGTSTP         20
 | 
			
		||||
#define SIGTTIN         21
 | 
			
		||||
#define SIGTTOU         22
 | 
			
		||||
#define SIGURG          23
 | 
			
		||||
#define SIGXCPU         24
 | 
			
		||||
#define SIGXFSZ         25
 | 
			
		||||
#define SIGVTALRM       26
 | 
			
		||||
#define SIGPROF         27
 | 
			
		||||
#define SIGWINCH        28
 | 
			
		||||
#define SIGIO           29
 | 
			
		||||
#define SIGPOLL         SIGIO
 | 
			
		||||
/*
 | 
			
		||||
#define SIGLOST         29
 | 
			
		||||
*/
 | 
			
		||||
#define SIGPWR          30
 | 
			
		||||
#define SIGSYS		31
 | 
			
		||||
#define SIGUNUSED       31
 | 
			
		||||
 | 
			
		||||
/* These should not be considered constants from userland.  */
 | 
			
		||||
#define SIGRTMIN        32
 | 
			
		||||
#define SIGRTMAX        _NSIG
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * SA_FLAGS values:
 | 
			
		||||
 *
 | 
			
		||||
 * SA_ONSTACK indicates that a registered stack_t will be used.
 | 
			
		||||
 * SA_RESTART flag to get restarting signals (which were the default long ago)
 | 
			
		||||
 * SA_NOCLDSTOP flag to turn off SIGCHLD when children stop.
 | 
			
		||||
 * SA_RESETHAND clears the handler when the signal is delivered.
 | 
			
		||||
 * SA_NOCLDWAIT flag on SIGCHLD to inhibit zombies.
 | 
			
		||||
 * SA_NODEFER prevents the current signal from being masked in the handler.
 | 
			
		||||
 *
 | 
			
		||||
 * SA_ONESHOT and SA_NOMASK are the historical Linux names for the Single
 | 
			
		||||
 * Unix names RESETHAND and NODEFER respectively.
 | 
			
		||||
 */
 | 
			
		||||
#define SA_NOCLDSTOP    0x00000001
 | 
			
		||||
#define SA_NOCLDWAIT    0x00000002
 | 
			
		||||
#define SA_SIGINFO      0x00000004
 | 
			
		||||
#define SA_ONSTACK      0x08000000
 | 
			
		||||
#define SA_RESTART      0x10000000
 | 
			
		||||
#define SA_NODEFER      0x40000000
 | 
			
		||||
#define SA_RESETHAND    0x80000000
 | 
			
		||||
 | 
			
		||||
#define SA_NOMASK       SA_NODEFER
 | 
			
		||||
#define SA_ONESHOT      SA_RESETHAND
 | 
			
		||||
 | 
			
		||||
#define SA_RESTORER     0x04000000
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * sigaltstack controls
 | 
			
		||||
 */
 | 
			
		||||
#define SS_ONSTACK      1
 | 
			
		||||
#define SS_DISABLE      2
 | 
			
		||||
 | 
			
		||||
#define MINSIGSTKSZ     2048
 | 
			
		||||
#define SIGSTKSZ        8192
 | 
			
		||||
 | 
			
		||||
#include <asm-generic/signal-defs.h>
 | 
			
		||||
 | 
			
		||||
#ifdef __KERNEL__
 | 
			
		||||
struct old_sigaction {
 | 
			
		||||
        __sighandler_t sa_handler;
 | 
			
		||||
        old_sigset_t sa_mask;
 | 
			
		||||
| 
						 | 
				
			
			@ -136,35 +41,4 @@ struct k_sigaction {
 | 
			
		|||
 | 
			
		||||
#define ptrace_signal_deliver(regs, cookie) do { } while (0)
 | 
			
		||||
 | 
			
		||||
#else
 | 
			
		||||
/* Here we must cater to libcs that poke about in kernel headers.  */
 | 
			
		||||
 | 
			
		||||
struct sigaction {
 | 
			
		||||
        union {
 | 
			
		||||
          __sighandler_t _sa_handler;
 | 
			
		||||
          void (*_sa_sigaction)(int, struct siginfo *, void *);
 | 
			
		||||
        } _u;
 | 
			
		||||
#ifndef __s390x__ /* lovely */
 | 
			
		||||
        sigset_t sa_mask;
 | 
			
		||||
        unsigned long sa_flags;
 | 
			
		||||
        void (*sa_restorer)(void);
 | 
			
		||||
#else  /* __s390x__ */
 | 
			
		||||
        unsigned long sa_flags;
 | 
			
		||||
        void (*sa_restorer)(void);
 | 
			
		||||
	sigset_t sa_mask;
 | 
			
		||||
#endif /* __s390x__ */
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
#define sa_handler      _u._sa_handler
 | 
			
		||||
#define sa_sigaction    _u._sa_sigaction
 | 
			
		||||
 | 
			
		||||
#endif /* __KERNEL__ */
 | 
			
		||||
 | 
			
		||||
typedef struct sigaltstack {
 | 
			
		||||
        void __user *ss_sp;
 | 
			
		||||
        int ss_flags;
 | 
			
		||||
        size_t ss_size;
 | 
			
		||||
} stack_t;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#endif
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -3,49 +3,11 @@
 | 
			
		|||
 *
 | 
			
		||||
 *  Derived from "include/asm-i386/termios.h"
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#ifndef _S390_TERMIOS_H
 | 
			
		||||
#define _S390_TERMIOS_H
 | 
			
		||||
 | 
			
		||||
#include <asm/termbits.h>
 | 
			
		||||
#include <asm/ioctls.h>
 | 
			
		||||
#include <uapi/asm/termios.h>
 | 
			
		||||
 | 
			
		||||
struct winsize {
 | 
			
		||||
	unsigned short ws_row;
 | 
			
		||||
	unsigned short ws_col;
 | 
			
		||||
	unsigned short ws_xpixel;
 | 
			
		||||
	unsigned short ws_ypixel;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
#define NCC 8
 | 
			
		||||
struct termio {
 | 
			
		||||
	unsigned short c_iflag;		/* input mode flags */
 | 
			
		||||
	unsigned short c_oflag;		/* output mode flags */
 | 
			
		||||
	unsigned short c_cflag;		/* control mode flags */
 | 
			
		||||
	unsigned short c_lflag;		/* local mode flags */
 | 
			
		||||
	unsigned char c_line;		/* line discipline */
 | 
			
		||||
	unsigned char c_cc[NCC];	/* control characters */
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
/* modem lines */
 | 
			
		||||
#define TIOCM_LE	0x001
 | 
			
		||||
#define TIOCM_DTR	0x002
 | 
			
		||||
#define TIOCM_RTS	0x004
 | 
			
		||||
#define TIOCM_ST	0x008
 | 
			
		||||
#define TIOCM_SR	0x010
 | 
			
		||||
#define TIOCM_CTS	0x020
 | 
			
		||||
#define TIOCM_CAR	0x040
 | 
			
		||||
#define TIOCM_RNG	0x080
 | 
			
		||||
#define TIOCM_DSR	0x100
 | 
			
		||||
#define TIOCM_CD	TIOCM_CAR
 | 
			
		||||
#define TIOCM_RI	TIOCM_RNG
 | 
			
		||||
#define TIOCM_OUT1	0x2000
 | 
			
		||||
#define TIOCM_OUT2	0x4000
 | 
			
		||||
#define TIOCM_LOOP	0x8000
 | 
			
		||||
 | 
			
		||||
/* ioctl (fd, TIOCSERGETLSR, &result) where result may be as below */
 | 
			
		||||
 | 
			
		||||
#ifdef __KERNEL__
 | 
			
		||||
 | 
			
		||||
/*	intr=^C		quit=^\		erase=del	kill=^U
 | 
			
		||||
	eof=^D		vtime=\0	vmin=\1		sxtc=\0
 | 
			
		||||
| 
						 | 
				
			
			@ -60,6 +22,4 @@ struct termio {
 | 
			
		|||
 | 
			
		||||
#include <asm-generic/termios-base.h>
 | 
			
		||||
 | 
			
		||||
#endif	/* __KERNEL__ */
 | 
			
		||||
 | 
			
		||||
#endif	/* _S390_TERMIOS_H */
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -3,26 +3,14 @@
 | 
			
		|||
 *
 | 
			
		||||
 *  Derived from "include/asm-i386/types.h"
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#ifndef _S390_TYPES_H
 | 
			
		||||
#define _S390_TYPES_H
 | 
			
		||||
 | 
			
		||||
#include <asm-generic/int-ll64.h>
 | 
			
		||||
 | 
			
		||||
#ifndef __ASSEMBLY__
 | 
			
		||||
 | 
			
		||||
/* A address type so that arithmetic can be done on it & it can be upgraded to
 | 
			
		||||
   64 bit when necessary 
 | 
			
		||||
*/
 | 
			
		||||
typedef unsigned long addr_t; 
 | 
			
		||||
typedef __signed__ long saddr_t;
 | 
			
		||||
 | 
			
		||||
#endif /* __ASSEMBLY__ */
 | 
			
		||||
#include <uapi/asm/types.h>
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * These aren't exported outside the kernel to avoid name space clashes
 | 
			
		||||
 */
 | 
			
		||||
#ifdef __KERNEL__
 | 
			
		||||
 | 
			
		||||
#ifndef __ASSEMBLY__
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -37,5 +25,4 @@ typedef union {
 | 
			
		|||
 | 
			
		||||
#endif /* ! CONFIG_64BIT   */
 | 
			
		||||
#endif /* __ASSEMBLY__  */
 | 
			
		||||
#endif /* __KERNEL__    */
 | 
			
		||||
#endif /* _S390_TYPES_H */
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -3,375 +3,11 @@
 | 
			
		|||
 *
 | 
			
		||||
 *  Derived from "include/asm-i386/unistd.h"
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#ifndef _ASM_S390_UNISTD_H_
 | 
			
		||||
#define _ASM_S390_UNISTD_H_
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * This file contains the system call numbers.
 | 
			
		||||
 */
 | 
			
		||||
#include <uapi/asm/unistd.h>
 | 
			
		||||
 | 
			
		||||
#define __NR_exit                 1
 | 
			
		||||
#define __NR_fork                 2
 | 
			
		||||
#define __NR_read                 3
 | 
			
		||||
#define __NR_write                4
 | 
			
		||||
#define __NR_open                 5
 | 
			
		||||
#define __NR_close                6
 | 
			
		||||
#define __NR_restart_syscall	  7
 | 
			
		||||
#define __NR_creat                8
 | 
			
		||||
#define __NR_link                 9
 | 
			
		||||
#define __NR_unlink              10
 | 
			
		||||
#define __NR_execve              11
 | 
			
		||||
#define __NR_chdir               12
 | 
			
		||||
#define __NR_mknod               14
 | 
			
		||||
#define __NR_chmod               15
 | 
			
		||||
#define __NR_lseek               19
 | 
			
		||||
#define __NR_getpid              20
 | 
			
		||||
#define __NR_mount               21
 | 
			
		||||
#define __NR_umount              22
 | 
			
		||||
#define __NR_ptrace              26
 | 
			
		||||
#define __NR_alarm               27
 | 
			
		||||
#define __NR_pause               29
 | 
			
		||||
#define __NR_utime               30
 | 
			
		||||
#define __NR_access              33
 | 
			
		||||
#define __NR_nice                34
 | 
			
		||||
#define __NR_sync                36
 | 
			
		||||
#define __NR_kill                37
 | 
			
		||||
#define __NR_rename              38
 | 
			
		||||
#define __NR_mkdir               39
 | 
			
		||||
#define __NR_rmdir               40
 | 
			
		||||
#define __NR_dup                 41
 | 
			
		||||
#define __NR_pipe                42
 | 
			
		||||
#define __NR_times               43
 | 
			
		||||
#define __NR_brk                 45
 | 
			
		||||
#define __NR_signal              48
 | 
			
		||||
#define __NR_acct                51
 | 
			
		||||
#define __NR_umount2             52
 | 
			
		||||
#define __NR_ioctl               54
 | 
			
		||||
#define __NR_fcntl               55
 | 
			
		||||
#define __NR_setpgid             57
 | 
			
		||||
#define __NR_umask               60
 | 
			
		||||
#define __NR_chroot              61
 | 
			
		||||
#define __NR_ustat               62
 | 
			
		||||
#define __NR_dup2                63
 | 
			
		||||
#define __NR_getppid             64
 | 
			
		||||
#define __NR_getpgrp             65
 | 
			
		||||
#define __NR_setsid              66
 | 
			
		||||
#define __NR_sigaction           67
 | 
			
		||||
#define __NR_sigsuspend          72
 | 
			
		||||
#define __NR_sigpending          73
 | 
			
		||||
#define __NR_sethostname         74
 | 
			
		||||
#define __NR_setrlimit           75
 | 
			
		||||
#define __NR_getrusage           77
 | 
			
		||||
#define __NR_gettimeofday        78
 | 
			
		||||
#define __NR_settimeofday        79
 | 
			
		||||
#define __NR_symlink             83
 | 
			
		||||
#define __NR_readlink            85
 | 
			
		||||
#define __NR_uselib              86
 | 
			
		||||
#define __NR_swapon              87
 | 
			
		||||
#define __NR_reboot              88
 | 
			
		||||
#define __NR_readdir             89
 | 
			
		||||
#define __NR_mmap                90
 | 
			
		||||
#define __NR_munmap              91
 | 
			
		||||
#define __NR_truncate            92
 | 
			
		||||
#define __NR_ftruncate           93
 | 
			
		||||
#define __NR_fchmod              94
 | 
			
		||||
#define __NR_getpriority         96
 | 
			
		||||
#define __NR_setpriority         97
 | 
			
		||||
#define __NR_statfs              99
 | 
			
		||||
#define __NR_fstatfs            100
 | 
			
		||||
#define __NR_socketcall         102
 | 
			
		||||
#define __NR_syslog             103
 | 
			
		||||
#define __NR_setitimer          104
 | 
			
		||||
#define __NR_getitimer          105
 | 
			
		||||
#define __NR_stat               106
 | 
			
		||||
#define __NR_lstat              107
 | 
			
		||||
#define __NR_fstat              108
 | 
			
		||||
#define __NR_lookup_dcookie     110
 | 
			
		||||
#define __NR_vhangup            111
 | 
			
		||||
#define __NR_idle               112
 | 
			
		||||
#define __NR_wait4              114
 | 
			
		||||
#define __NR_swapoff            115
 | 
			
		||||
#define __NR_sysinfo            116
 | 
			
		||||
#define __NR_ipc                117
 | 
			
		||||
#define __NR_fsync              118
 | 
			
		||||
#define __NR_sigreturn          119
 | 
			
		||||
#define __NR_clone              120
 | 
			
		||||
#define __NR_setdomainname      121
 | 
			
		||||
#define __NR_uname              122
 | 
			
		||||
#define __NR_adjtimex           124
 | 
			
		||||
#define __NR_mprotect           125
 | 
			
		||||
#define __NR_sigprocmask        126
 | 
			
		||||
#define __NR_create_module      127
 | 
			
		||||
#define __NR_init_module        128
 | 
			
		||||
#define __NR_delete_module      129
 | 
			
		||||
#define __NR_get_kernel_syms    130
 | 
			
		||||
#define __NR_quotactl           131
 | 
			
		||||
#define __NR_getpgid            132
 | 
			
		||||
#define __NR_fchdir             133
 | 
			
		||||
#define __NR_bdflush            134
 | 
			
		||||
#define __NR_sysfs              135
 | 
			
		||||
#define __NR_personality        136
 | 
			
		||||
#define __NR_afs_syscall        137 /* Syscall for Andrew File System */
 | 
			
		||||
#define __NR_getdents           141
 | 
			
		||||
#define __NR_flock              143
 | 
			
		||||
#define __NR_msync              144
 | 
			
		||||
#define __NR_readv              145
 | 
			
		||||
#define __NR_writev             146
 | 
			
		||||
#define __NR_getsid             147
 | 
			
		||||
#define __NR_fdatasync          148
 | 
			
		||||
#define __NR__sysctl            149
 | 
			
		||||
#define __NR_mlock              150
 | 
			
		||||
#define __NR_munlock            151
 | 
			
		||||
#define __NR_mlockall           152
 | 
			
		||||
#define __NR_munlockall         153
 | 
			
		||||
#define __NR_sched_setparam             154
 | 
			
		||||
#define __NR_sched_getparam             155
 | 
			
		||||
#define __NR_sched_setscheduler         156
 | 
			
		||||
#define __NR_sched_getscheduler         157
 | 
			
		||||
#define __NR_sched_yield                158
 | 
			
		||||
#define __NR_sched_get_priority_max     159
 | 
			
		||||
#define __NR_sched_get_priority_min     160
 | 
			
		||||
#define __NR_sched_rr_get_interval      161
 | 
			
		||||
#define __NR_nanosleep          162
 | 
			
		||||
#define __NR_mremap             163
 | 
			
		||||
#define __NR_query_module       167
 | 
			
		||||
#define __NR_poll               168
 | 
			
		||||
#define __NR_nfsservctl         169
 | 
			
		||||
#define __NR_prctl              172
 | 
			
		||||
#define __NR_rt_sigreturn       173
 | 
			
		||||
#define __NR_rt_sigaction       174
 | 
			
		||||
#define __NR_rt_sigprocmask     175
 | 
			
		||||
#define __NR_rt_sigpending      176
 | 
			
		||||
#define __NR_rt_sigtimedwait    177
 | 
			
		||||
#define __NR_rt_sigqueueinfo    178
 | 
			
		||||
#define __NR_rt_sigsuspend      179
 | 
			
		||||
#define __NR_pread64            180
 | 
			
		||||
#define __NR_pwrite64           181
 | 
			
		||||
#define __NR_getcwd             183
 | 
			
		||||
#define __NR_capget             184
 | 
			
		||||
#define __NR_capset             185
 | 
			
		||||
#define __NR_sigaltstack        186
 | 
			
		||||
#define __NR_sendfile           187
 | 
			
		||||
#define __NR_getpmsg		188
 | 
			
		||||
#define __NR_putpmsg		189
 | 
			
		||||
#define __NR_vfork		190
 | 
			
		||||
#define __NR_pivot_root         217
 | 
			
		||||
#define __NR_mincore            218
 | 
			
		||||
#define __NR_madvise            219
 | 
			
		||||
#define __NR_getdents64		220
 | 
			
		||||
#define __NR_readahead		222
 | 
			
		||||
#define __NR_setxattr		224
 | 
			
		||||
#define __NR_lsetxattr		225
 | 
			
		||||
#define __NR_fsetxattr		226
 | 
			
		||||
#define __NR_getxattr		227
 | 
			
		||||
#define __NR_lgetxattr		228
 | 
			
		||||
#define __NR_fgetxattr		229
 | 
			
		||||
#define __NR_listxattr		230
 | 
			
		||||
#define __NR_llistxattr		231
 | 
			
		||||
#define __NR_flistxattr		232
 | 
			
		||||
#define __NR_removexattr	233
 | 
			
		||||
#define __NR_lremovexattr	234
 | 
			
		||||
#define __NR_fremovexattr	235
 | 
			
		||||
#define __NR_gettid		236
 | 
			
		||||
#define __NR_tkill		237
 | 
			
		||||
#define __NR_futex		238
 | 
			
		||||
#define __NR_sched_setaffinity	239
 | 
			
		||||
#define __NR_sched_getaffinity	240
 | 
			
		||||
#define __NR_tgkill		241
 | 
			
		||||
/* Number 242 is reserved for tux */
 | 
			
		||||
#define __NR_io_setup		243
 | 
			
		||||
#define __NR_io_destroy		244
 | 
			
		||||
#define __NR_io_getevents	245
 | 
			
		||||
#define __NR_io_submit		246
 | 
			
		||||
#define __NR_io_cancel		247
 | 
			
		||||
#define __NR_exit_group		248
 | 
			
		||||
#define __NR_epoll_create	249
 | 
			
		||||
#define __NR_epoll_ctl		250
 | 
			
		||||
#define __NR_epoll_wait		251
 | 
			
		||||
#define __NR_set_tid_address	252
 | 
			
		||||
#define __NR_fadvise64		253
 | 
			
		||||
#define __NR_timer_create	254
 | 
			
		||||
#define __NR_timer_settime	(__NR_timer_create+1)
 | 
			
		||||
#define __NR_timer_gettime	(__NR_timer_create+2)
 | 
			
		||||
#define __NR_timer_getoverrun	(__NR_timer_create+3)
 | 
			
		||||
#define __NR_timer_delete	(__NR_timer_create+4)
 | 
			
		||||
#define __NR_clock_settime	(__NR_timer_create+5)
 | 
			
		||||
#define __NR_clock_gettime	(__NR_timer_create+6)
 | 
			
		||||
#define __NR_clock_getres	(__NR_timer_create+7)
 | 
			
		||||
#define __NR_clock_nanosleep	(__NR_timer_create+8)
 | 
			
		||||
/* Number 263 is reserved for vserver */
 | 
			
		||||
#define __NR_statfs64		265
 | 
			
		||||
#define __NR_fstatfs64		266
 | 
			
		||||
#define __NR_remap_file_pages	267
 | 
			
		||||
/* Number 268 is reserved for new sys_mbind */
 | 
			
		||||
/* Number 269 is reserved for new sys_get_mempolicy */
 | 
			
		||||
/* Number 270 is reserved for new sys_set_mempolicy */
 | 
			
		||||
#define __NR_mq_open		271
 | 
			
		||||
#define __NR_mq_unlink		272
 | 
			
		||||
#define __NR_mq_timedsend	273
 | 
			
		||||
#define __NR_mq_timedreceive	274
 | 
			
		||||
#define __NR_mq_notify		275
 | 
			
		||||
#define __NR_mq_getsetattr	276
 | 
			
		||||
#define __NR_kexec_load		277
 | 
			
		||||
#define __NR_add_key		278
 | 
			
		||||
#define __NR_request_key	279
 | 
			
		||||
#define __NR_keyctl		280
 | 
			
		||||
#define __NR_waitid		281
 | 
			
		||||
#define __NR_ioprio_set		282
 | 
			
		||||
#define __NR_ioprio_get		283
 | 
			
		||||
#define __NR_inotify_init	284
 | 
			
		||||
#define __NR_inotify_add_watch	285
 | 
			
		||||
#define __NR_inotify_rm_watch	286
 | 
			
		||||
/* Number 287 is reserved for new sys_migrate_pages */
 | 
			
		||||
#define __NR_openat		288
 | 
			
		||||
#define __NR_mkdirat		289
 | 
			
		||||
#define __NR_mknodat		290
 | 
			
		||||
#define __NR_fchownat		291
 | 
			
		||||
#define __NR_futimesat		292
 | 
			
		||||
#define __NR_unlinkat		294
 | 
			
		||||
#define __NR_renameat		295
 | 
			
		||||
#define __NR_linkat		296
 | 
			
		||||
#define __NR_symlinkat		297
 | 
			
		||||
#define __NR_readlinkat		298
 | 
			
		||||
#define __NR_fchmodat		299
 | 
			
		||||
#define __NR_faccessat		300
 | 
			
		||||
#define __NR_pselect6		301
 | 
			
		||||
#define __NR_ppoll		302
 | 
			
		||||
#define __NR_unshare		303
 | 
			
		||||
#define __NR_set_robust_list	304
 | 
			
		||||
#define __NR_get_robust_list	305
 | 
			
		||||
#define __NR_splice		306
 | 
			
		||||
#define __NR_sync_file_range	307
 | 
			
		||||
#define __NR_tee		308
 | 
			
		||||
#define __NR_vmsplice		309
 | 
			
		||||
/* Number 310 is reserved for new sys_move_pages */
 | 
			
		||||
#define __NR_getcpu		311
 | 
			
		||||
#define __NR_epoll_pwait	312
 | 
			
		||||
#define __NR_utimes		313
 | 
			
		||||
#define __NR_fallocate		314
 | 
			
		||||
#define __NR_utimensat		315
 | 
			
		||||
#define __NR_signalfd		316
 | 
			
		||||
#define __NR_timerfd		317
 | 
			
		||||
#define __NR_eventfd		318
 | 
			
		||||
#define __NR_timerfd_create	319
 | 
			
		||||
#define __NR_timerfd_settime	320
 | 
			
		||||
#define __NR_timerfd_gettime	321
 | 
			
		||||
#define __NR_signalfd4		322
 | 
			
		||||
#define __NR_eventfd2		323
 | 
			
		||||
#define __NR_inotify_init1	324
 | 
			
		||||
#define __NR_pipe2		325
 | 
			
		||||
#define __NR_dup3		326
 | 
			
		||||
#define __NR_epoll_create1	327
 | 
			
		||||
#define	__NR_preadv		328
 | 
			
		||||
#define	__NR_pwritev		329
 | 
			
		||||
#define __NR_rt_tgsigqueueinfo	330
 | 
			
		||||
#define __NR_perf_event_open	331
 | 
			
		||||
#define __NR_fanotify_init	332
 | 
			
		||||
#define __NR_fanotify_mark	333
 | 
			
		||||
#define __NR_prlimit64		334
 | 
			
		||||
#define __NR_name_to_handle_at	335
 | 
			
		||||
#define __NR_open_by_handle_at	336
 | 
			
		||||
#define __NR_clock_adjtime	337
 | 
			
		||||
#define __NR_syncfs		338
 | 
			
		||||
#define __NR_setns		339
 | 
			
		||||
#define __NR_process_vm_readv	340
 | 
			
		||||
#define __NR_process_vm_writev	341
 | 
			
		||||
#define __NR_s390_runtime_instr 342
 | 
			
		||||
#define __NR_kcmp		343
 | 
			
		||||
#define NR_syscalls 344
 | 
			
		||||
 | 
			
		||||
/* 
 | 
			
		||||
 * There are some system calls that are not present on 64 bit, some
 | 
			
		||||
 * have a different name although they do the same (e.g. __NR_chown32
 | 
			
		||||
 * is __NR_chown on 64 bit).
 | 
			
		||||
 */
 | 
			
		||||
#ifndef __s390x__
 | 
			
		||||
 | 
			
		||||
#define __NR_time		 13
 | 
			
		||||
#define __NR_lchown		 16
 | 
			
		||||
#define __NR_setuid		 23
 | 
			
		||||
#define __NR_getuid		 24
 | 
			
		||||
#define __NR_stime		 25
 | 
			
		||||
#define __NR_setgid		 46
 | 
			
		||||
#define __NR_getgid		 47
 | 
			
		||||
#define __NR_geteuid		 49
 | 
			
		||||
#define __NR_getegid		 50
 | 
			
		||||
#define __NR_setreuid		 70
 | 
			
		||||
#define __NR_setregid		 71
 | 
			
		||||
#define __NR_getrlimit		 76
 | 
			
		||||
#define __NR_getgroups		 80
 | 
			
		||||
#define __NR_setgroups		 81
 | 
			
		||||
#define __NR_fchown		 95
 | 
			
		||||
#define __NR_ioperm		101
 | 
			
		||||
#define __NR_setfsuid		138
 | 
			
		||||
#define __NR_setfsgid		139
 | 
			
		||||
#define __NR__llseek		140
 | 
			
		||||
#define __NR__newselect 	142
 | 
			
		||||
#define __NR_setresuid		164
 | 
			
		||||
#define __NR_getresuid		165
 | 
			
		||||
#define __NR_setresgid		170
 | 
			
		||||
#define __NR_getresgid		171
 | 
			
		||||
#define __NR_chown		182
 | 
			
		||||
#define __NR_ugetrlimit		191	/* SuS compliant getrlimit */
 | 
			
		||||
#define __NR_mmap2		192
 | 
			
		||||
#define __NR_truncate64		193
 | 
			
		||||
#define __NR_ftruncate64	194
 | 
			
		||||
#define __NR_stat64		195
 | 
			
		||||
#define __NR_lstat64		196
 | 
			
		||||
#define __NR_fstat64		197
 | 
			
		||||
#define __NR_lchown32		198
 | 
			
		||||
#define __NR_getuid32		199
 | 
			
		||||
#define __NR_getgid32		200
 | 
			
		||||
#define __NR_geteuid32		201
 | 
			
		||||
#define __NR_getegid32		202
 | 
			
		||||
#define __NR_setreuid32		203
 | 
			
		||||
#define __NR_setregid32		204
 | 
			
		||||
#define __NR_getgroups32	205
 | 
			
		||||
#define __NR_setgroups32	206
 | 
			
		||||
#define __NR_fchown32		207
 | 
			
		||||
#define __NR_setresuid32	208
 | 
			
		||||
#define __NR_getresuid32	209
 | 
			
		||||
#define __NR_setresgid32	210
 | 
			
		||||
#define __NR_getresgid32	211
 | 
			
		||||
#define __NR_chown32		212
 | 
			
		||||
#define __NR_setuid32		213
 | 
			
		||||
#define __NR_setgid32		214
 | 
			
		||||
#define __NR_setfsuid32		215
 | 
			
		||||
#define __NR_setfsgid32		216
 | 
			
		||||
#define __NR_fcntl64		221
 | 
			
		||||
#define __NR_sendfile64		223
 | 
			
		||||
#define __NR_fadvise64_64	264
 | 
			
		||||
#define __NR_fstatat64		293
 | 
			
		||||
 | 
			
		||||
#else
 | 
			
		||||
 | 
			
		||||
#define __NR_select		142
 | 
			
		||||
#define __NR_getrlimit		191	/* SuS compliant getrlimit */
 | 
			
		||||
#define __NR_lchown  		198
 | 
			
		||||
#define __NR_getuid  		199
 | 
			
		||||
#define __NR_getgid  		200
 | 
			
		||||
#define __NR_geteuid  		201
 | 
			
		||||
#define __NR_getegid  		202
 | 
			
		||||
#define __NR_setreuid  		203
 | 
			
		||||
#define __NR_setregid  		204
 | 
			
		||||
#define __NR_getgroups  	205
 | 
			
		||||
#define __NR_setgroups  	206
 | 
			
		||||
#define __NR_fchown  		207
 | 
			
		||||
#define __NR_setresuid  	208
 | 
			
		||||
#define __NR_getresuid  	209
 | 
			
		||||
#define __NR_setresgid  	210
 | 
			
		||||
#define __NR_getresgid  	211
 | 
			
		||||
#define __NR_chown  		212
 | 
			
		||||
#define __NR_setuid  		213
 | 
			
		||||
#define __NR_setgid  		214
 | 
			
		||||
#define __NR_setfsuid  		215
 | 
			
		||||
#define __NR_setfsgid  		216
 | 
			
		||||
#define __NR_newfstatat		293
 | 
			
		||||
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#ifdef __KERNEL__
 | 
			
		||||
 | 
			
		||||
#ifndef CONFIG_64BIT
 | 
			
		||||
#define __IGNORE_select
 | 
			
		||||
| 
						 | 
				
			
			@ -426,5 +62,4 @@
 | 
			
		|||
 */
 | 
			
		||||
#define cond_syscall(x) asm(".weak\t" #x "\n\t.set\t" #x ",sys_ni_syscall")
 | 
			
		||||
 | 
			
		||||
#endif /* __KERNEL__ */
 | 
			
		||||
#endif /* _ASM_S390_UNISTD_H_ */
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,3 +1,48 @@
 | 
			
		|||
# UAPI Header export list
 | 
			
		||||
include include/uapi/asm-generic/Kbuild.asm
 | 
			
		||||
 | 
			
		||||
header-y += auxvec.h
 | 
			
		||||
header-y += bitsperlong.h
 | 
			
		||||
header-y += byteorder.h
 | 
			
		||||
header-y += chpid.h
 | 
			
		||||
header-y += chsc.h
 | 
			
		||||
header-y += cmb.h
 | 
			
		||||
header-y += dasd.h
 | 
			
		||||
header-y += debug.h
 | 
			
		||||
header-y += errno.h
 | 
			
		||||
header-y += fcntl.h
 | 
			
		||||
header-y += ioctl.h
 | 
			
		||||
header-y += ioctls.h
 | 
			
		||||
header-y += ipcbuf.h
 | 
			
		||||
header-y += kvm.h
 | 
			
		||||
header-y += kvm_para.h
 | 
			
		||||
header-y += kvm_virtio.h
 | 
			
		||||
header-y += mman.h
 | 
			
		||||
header-y += monwriter.h
 | 
			
		||||
header-y += msgbuf.h
 | 
			
		||||
header-y += param.h
 | 
			
		||||
header-y += poll.h
 | 
			
		||||
header-y += posix_types.h
 | 
			
		||||
header-y += ptrace.h
 | 
			
		||||
header-y += qeth.h
 | 
			
		||||
header-y += resource.h
 | 
			
		||||
header-y += schid.h
 | 
			
		||||
header-y += sembuf.h
 | 
			
		||||
header-y += setup.h
 | 
			
		||||
header-y += shmbuf.h
 | 
			
		||||
header-y += sigcontext.h
 | 
			
		||||
header-y += siginfo.h
 | 
			
		||||
header-y += signal.h
 | 
			
		||||
header-y += socket.h
 | 
			
		||||
header-y += sockios.h
 | 
			
		||||
header-y += stat.h
 | 
			
		||||
header-y += statfs.h
 | 
			
		||||
header-y += swab.h
 | 
			
		||||
header-y += tape390.h
 | 
			
		||||
header-y += termbits.h
 | 
			
		||||
header-y += termios.h
 | 
			
		||||
header-y += types.h
 | 
			
		||||
header-y += ucontext.h
 | 
			
		||||
header-y += unistd.h
 | 
			
		||||
header-y += vtoc.h
 | 
			
		||||
header-y += zcrypt.h
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										22
									
								
								arch/s390/include/uapi/asm/chpid.h
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								arch/s390/include/uapi/asm/chpid.h
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,22 @@
 | 
			
		|||
/*
 | 
			
		||||
 *    Copyright IBM Corp. 2007
 | 
			
		||||
 *    Author(s): Peter Oberparleiter <peter.oberparleiter@de.ibm.com>
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#ifndef _UAPI_ASM_S390_CHPID_H
 | 
			
		||||
#define _UAPI_ASM_S390_CHPID_H
 | 
			
		||||
 | 
			
		||||
#include <linux/string.h>
 | 
			
		||||
#include <linux/types.h>
 | 
			
		||||
 | 
			
		||||
#define __MAX_CHPID 255
 | 
			
		||||
 | 
			
		||||
struct chp_id {
 | 
			
		||||
	u8 reserved1;
 | 
			
		||||
	u8 cssid;
 | 
			
		||||
	u8 reserved2;
 | 
			
		||||
	u8 id;
 | 
			
		||||
} __attribute__((packed));
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#endif /* _UAPI_ASM_S390_CHPID_H */
 | 
			
		||||
							
								
								
									
										53
									
								
								arch/s390/include/uapi/asm/cmb.h
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										53
									
								
								arch/s390/include/uapi/asm/cmb.h
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,53 @@
 | 
			
		|||
#ifndef _UAPIS390_CMB_H
 | 
			
		||||
#define _UAPIS390_CMB_H
 | 
			
		||||
 | 
			
		||||
#include <linux/types.h>
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * struct cmbdata - channel measurement block data for user space
 | 
			
		||||
 * @size: size of the stored data
 | 
			
		||||
 * @elapsed_time: time since last sampling
 | 
			
		||||
 * @ssch_rsch_count: number of ssch and rsch
 | 
			
		||||
 * @sample_count: number of samples
 | 
			
		||||
 * @device_connect_time: time of device connect
 | 
			
		||||
 * @function_pending_time: time of function pending
 | 
			
		||||
 * @device_disconnect_time: time of device disconnect
 | 
			
		||||
 * @control_unit_queuing_time: time of control unit queuing
 | 
			
		||||
 * @device_active_only_time: time of device active only
 | 
			
		||||
 * @device_busy_time: time of device busy (ext. format)
 | 
			
		||||
 * @initial_command_response_time: initial command response time (ext. format)
 | 
			
		||||
 *
 | 
			
		||||
 * All values are stored as 64 bit for simplicity, especially
 | 
			
		||||
 * in 32 bit emulation mode. All time values are normalized to
 | 
			
		||||
 * nanoseconds.
 | 
			
		||||
 * Currently, two formats are known, which differ by the size of
 | 
			
		||||
 * this structure, i.e. the last two members are only set when
 | 
			
		||||
 * the extended channel measurement facility (first shipped in
 | 
			
		||||
 * z990 machines) is activated.
 | 
			
		||||
 * Potentially, more fields could be added, which would result in a
 | 
			
		||||
 * new ioctl number.
 | 
			
		||||
 */
 | 
			
		||||
struct cmbdata {
 | 
			
		||||
	__u64 size;
 | 
			
		||||
	__u64 elapsed_time;
 | 
			
		||||
 /* basic and exended format: */
 | 
			
		||||
	__u64 ssch_rsch_count;
 | 
			
		||||
	__u64 sample_count;
 | 
			
		||||
	__u64 device_connect_time;
 | 
			
		||||
	__u64 function_pending_time;
 | 
			
		||||
	__u64 device_disconnect_time;
 | 
			
		||||
	__u64 control_unit_queuing_time;
 | 
			
		||||
	__u64 device_active_only_time;
 | 
			
		||||
 /* extended format only: */
 | 
			
		||||
	__u64 device_busy_time;
 | 
			
		||||
	__u64 initial_command_response_time;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
/* enable channel measurement */
 | 
			
		||||
#define BIODASDCMFENABLE	_IO(DASD_IOCTL_LETTER, 32)
 | 
			
		||||
/* enable channel measurement */
 | 
			
		||||
#define BIODASDCMFDISABLE	_IO(DASD_IOCTL_LETTER, 33)
 | 
			
		||||
/* read channel measurement data */
 | 
			
		||||
#define BIODASDREADALLCMB	_IOWR(DASD_IOCTL_LETTER, 33, struct cmbdata)
 | 
			
		||||
 | 
			
		||||
#endif /* _UAPIS390_CMB_H */
 | 
			
		||||
							
								
								
									
										34
									
								
								arch/s390/include/uapi/asm/debug.h
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										34
									
								
								arch/s390/include/uapi/asm/debug.h
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,34 @@
 | 
			
		|||
/*
 | 
			
		||||
 *   S/390 debug facility
 | 
			
		||||
 *
 | 
			
		||||
 *    Copyright IBM Corp. 1999, 2000
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#ifndef _UAPIDEBUG_H
 | 
			
		||||
#define _UAPIDEBUG_H
 | 
			
		||||
 | 
			
		||||
#include <linux/fs.h>
 | 
			
		||||
 | 
			
		||||
/* Note:
 | 
			
		||||
 * struct __debug_entry must be defined outside of #ifdef __KERNEL__ 
 | 
			
		||||
 * in order to allow a user program to analyze the 'raw'-view.
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
struct __debug_entry{
 | 
			
		||||
        union {
 | 
			
		||||
                struct {
 | 
			
		||||
                        unsigned long long clock:52;
 | 
			
		||||
                        unsigned long long exception:1;
 | 
			
		||||
                        unsigned long long level:3;
 | 
			
		||||
                        unsigned long long cpuid:8;
 | 
			
		||||
                } fields;
 | 
			
		||||
 | 
			
		||||
                unsigned long long stck;
 | 
			
		||||
        } id;
 | 
			
		||||
        void* caller;
 | 
			
		||||
} __attribute__((packed));
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#define __DEBUG_FEATURE_VERSION      2  /* version of debug feature */
 | 
			
		||||
 | 
			
		||||
#endif /* _UAPIDEBUG_H */
 | 
			
		||||
							
								
								
									
										0
									
								
								arch/s390/include/uapi/asm/kvm_para.h
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										0
									
								
								arch/s390/include/uapi/asm/kvm_para.h
									
										
									
									
									
										Normal file
									
								
							
							
								
								
									
										6
									
								
								arch/s390/include/uapi/asm/mman.h
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								arch/s390/include/uapi/asm/mman.h
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
 *  S390 version
 | 
			
		||||
 *
 | 
			
		||||
 *  Derived from "include/asm-i386/mman.h"
 | 
			
		||||
 */
 | 
			
		||||
#include <asm-generic/mman.h>
 | 
			
		||||
							
								
								
									
										472
									
								
								arch/s390/include/uapi/asm/ptrace.h
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										472
									
								
								arch/s390/include/uapi/asm/ptrace.h
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,472 @@
 | 
			
		|||
/*
 | 
			
		||||
 *  S390 version
 | 
			
		||||
 *    Copyright IBM Corp. 1999, 2000
 | 
			
		||||
 *    Author(s): Denis Joseph Barrow (djbarrow@de.ibm.com,barrow_dj@yahoo.com)
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#ifndef _UAPI_S390_PTRACE_H
 | 
			
		||||
#define _UAPI_S390_PTRACE_H
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * Offsets in the user_regs_struct. They are used for the ptrace
 | 
			
		||||
 * system call and in entry.S
 | 
			
		||||
 */
 | 
			
		||||
#ifndef __s390x__
 | 
			
		||||
 | 
			
		||||
#define PT_PSWMASK  0x00
 | 
			
		||||
#define PT_PSWADDR  0x04
 | 
			
		||||
#define PT_GPR0     0x08
 | 
			
		||||
#define PT_GPR1     0x0C
 | 
			
		||||
#define PT_GPR2     0x10
 | 
			
		||||
#define PT_GPR3     0x14
 | 
			
		||||
#define PT_GPR4     0x18
 | 
			
		||||
#define PT_GPR5     0x1C
 | 
			
		||||
#define PT_GPR6     0x20
 | 
			
		||||
#define PT_GPR7     0x24
 | 
			
		||||
#define PT_GPR8     0x28
 | 
			
		||||
#define PT_GPR9     0x2C
 | 
			
		||||
#define PT_GPR10    0x30
 | 
			
		||||
#define PT_GPR11    0x34
 | 
			
		||||
#define PT_GPR12    0x38
 | 
			
		||||
#define PT_GPR13    0x3C
 | 
			
		||||
#define PT_GPR14    0x40
 | 
			
		||||
#define PT_GPR15    0x44
 | 
			
		||||
#define PT_ACR0     0x48
 | 
			
		||||
#define PT_ACR1     0x4C
 | 
			
		||||
#define PT_ACR2     0x50
 | 
			
		||||
#define PT_ACR3     0x54
 | 
			
		||||
#define PT_ACR4	    0x58
 | 
			
		||||
#define PT_ACR5	    0x5C
 | 
			
		||||
#define PT_ACR6	    0x60
 | 
			
		||||
#define PT_ACR7	    0x64
 | 
			
		||||
#define PT_ACR8	    0x68
 | 
			
		||||
#define PT_ACR9	    0x6C
 | 
			
		||||
#define PT_ACR10    0x70
 | 
			
		||||
#define PT_ACR11    0x74
 | 
			
		||||
#define PT_ACR12    0x78
 | 
			
		||||
#define PT_ACR13    0x7C
 | 
			
		||||
#define PT_ACR14    0x80
 | 
			
		||||
#define PT_ACR15    0x84
 | 
			
		||||
#define PT_ORIGGPR2 0x88
 | 
			
		||||
#define PT_FPC	    0x90
 | 
			
		||||
/*
 | 
			
		||||
 * A nasty fact of life that the ptrace api
 | 
			
		||||
 * only supports passing of longs.
 | 
			
		||||
 */
 | 
			
		||||
#define PT_FPR0_HI  0x98
 | 
			
		||||
#define PT_FPR0_LO  0x9C
 | 
			
		||||
#define PT_FPR1_HI  0xA0
 | 
			
		||||
#define PT_FPR1_LO  0xA4
 | 
			
		||||
#define PT_FPR2_HI  0xA8
 | 
			
		||||
#define PT_FPR2_LO  0xAC
 | 
			
		||||
#define PT_FPR3_HI  0xB0
 | 
			
		||||
#define PT_FPR3_LO  0xB4
 | 
			
		||||
#define PT_FPR4_HI  0xB8
 | 
			
		||||
#define PT_FPR4_LO  0xBC
 | 
			
		||||
#define PT_FPR5_HI  0xC0
 | 
			
		||||
#define PT_FPR5_LO  0xC4
 | 
			
		||||
#define PT_FPR6_HI  0xC8
 | 
			
		||||
#define PT_FPR6_LO  0xCC
 | 
			
		||||
#define PT_FPR7_HI  0xD0
 | 
			
		||||
#define PT_FPR7_LO  0xD4
 | 
			
		||||
#define PT_FPR8_HI  0xD8
 | 
			
		||||
#define PT_FPR8_LO  0XDC
 | 
			
		||||
#define PT_FPR9_HI  0xE0
 | 
			
		||||
#define PT_FPR9_LO  0xE4
 | 
			
		||||
#define PT_FPR10_HI 0xE8
 | 
			
		||||
#define PT_FPR10_LO 0xEC
 | 
			
		||||
#define PT_FPR11_HI 0xF0
 | 
			
		||||
#define PT_FPR11_LO 0xF4
 | 
			
		||||
#define PT_FPR12_HI 0xF8
 | 
			
		||||
#define PT_FPR12_LO 0xFC
 | 
			
		||||
#define PT_FPR13_HI 0x100
 | 
			
		||||
#define PT_FPR13_LO 0x104
 | 
			
		||||
#define PT_FPR14_HI 0x108
 | 
			
		||||
#define PT_FPR14_LO 0x10C
 | 
			
		||||
#define PT_FPR15_HI 0x110
 | 
			
		||||
#define PT_FPR15_LO 0x114
 | 
			
		||||
#define PT_CR_9	    0x118
 | 
			
		||||
#define PT_CR_10    0x11C
 | 
			
		||||
#define PT_CR_11    0x120
 | 
			
		||||
#define PT_IEEE_IP  0x13C
 | 
			
		||||
#define PT_LASTOFF  PT_IEEE_IP
 | 
			
		||||
#define PT_ENDREGS  0x140-1
 | 
			
		||||
 | 
			
		||||
#define GPR_SIZE	4
 | 
			
		||||
#define CR_SIZE		4
 | 
			
		||||
 | 
			
		||||
#define STACK_FRAME_OVERHEAD	96	/* size of minimum stack frame */
 | 
			
		||||
 | 
			
		||||
#else /* __s390x__ */
 | 
			
		||||
 | 
			
		||||
#define PT_PSWMASK  0x00
 | 
			
		||||
#define PT_PSWADDR  0x08
 | 
			
		||||
#define PT_GPR0     0x10
 | 
			
		||||
#define PT_GPR1     0x18
 | 
			
		||||
#define PT_GPR2     0x20
 | 
			
		||||
#define PT_GPR3     0x28
 | 
			
		||||
#define PT_GPR4     0x30
 | 
			
		||||
#define PT_GPR5     0x38
 | 
			
		||||
#define PT_GPR6     0x40
 | 
			
		||||
#define PT_GPR7     0x48
 | 
			
		||||
#define PT_GPR8     0x50
 | 
			
		||||
#define PT_GPR9     0x58
 | 
			
		||||
#define PT_GPR10    0x60
 | 
			
		||||
#define PT_GPR11    0x68
 | 
			
		||||
#define PT_GPR12    0x70
 | 
			
		||||
#define PT_GPR13    0x78
 | 
			
		||||
#define PT_GPR14    0x80
 | 
			
		||||
#define PT_GPR15    0x88
 | 
			
		||||
#define PT_ACR0     0x90
 | 
			
		||||
#define PT_ACR1     0x94
 | 
			
		||||
#define PT_ACR2     0x98
 | 
			
		||||
#define PT_ACR3     0x9C
 | 
			
		||||
#define PT_ACR4	    0xA0
 | 
			
		||||
#define PT_ACR5	    0xA4
 | 
			
		||||
#define PT_ACR6	    0xA8
 | 
			
		||||
#define PT_ACR7	    0xAC
 | 
			
		||||
#define PT_ACR8	    0xB0
 | 
			
		||||
#define PT_ACR9	    0xB4
 | 
			
		||||
#define PT_ACR10    0xB8
 | 
			
		||||
#define PT_ACR11    0xBC
 | 
			
		||||
#define PT_ACR12    0xC0
 | 
			
		||||
#define PT_ACR13    0xC4
 | 
			
		||||
#define PT_ACR14    0xC8
 | 
			
		||||
#define PT_ACR15    0xCC
 | 
			
		||||
#define PT_ORIGGPR2 0xD0
 | 
			
		||||
#define PT_FPC	    0xD8
 | 
			
		||||
#define PT_FPR0     0xE0
 | 
			
		||||
#define PT_FPR1     0xE8
 | 
			
		||||
#define PT_FPR2     0xF0
 | 
			
		||||
#define PT_FPR3     0xF8
 | 
			
		||||
#define PT_FPR4     0x100
 | 
			
		||||
#define PT_FPR5     0x108
 | 
			
		||||
#define PT_FPR6     0x110
 | 
			
		||||
#define PT_FPR7     0x118
 | 
			
		||||
#define PT_FPR8     0x120
 | 
			
		||||
#define PT_FPR9     0x128
 | 
			
		||||
#define PT_FPR10    0x130
 | 
			
		||||
#define PT_FPR11    0x138
 | 
			
		||||
#define PT_FPR12    0x140
 | 
			
		||||
#define PT_FPR13    0x148
 | 
			
		||||
#define PT_FPR14    0x150
 | 
			
		||||
#define PT_FPR15    0x158
 | 
			
		||||
#define PT_CR_9     0x160
 | 
			
		||||
#define PT_CR_10    0x168
 | 
			
		||||
#define PT_CR_11    0x170
 | 
			
		||||
#define PT_IEEE_IP  0x1A8
 | 
			
		||||
#define PT_LASTOFF  PT_IEEE_IP
 | 
			
		||||
#define PT_ENDREGS  0x1B0-1
 | 
			
		||||
 | 
			
		||||
#define GPR_SIZE	8
 | 
			
		||||
#define CR_SIZE		8
 | 
			
		||||
 | 
			
		||||
#define STACK_FRAME_OVERHEAD    160      /* size of minimum stack frame */
 | 
			
		||||
 | 
			
		||||
#endif /* __s390x__ */
 | 
			
		||||
 | 
			
		||||
#define NUM_GPRS	16
 | 
			
		||||
#define NUM_FPRS	16
 | 
			
		||||
#define NUM_CRS		16
 | 
			
		||||
#define NUM_ACRS	16
 | 
			
		||||
 | 
			
		||||
#define NUM_CR_WORDS	3
 | 
			
		||||
 | 
			
		||||
#define FPR_SIZE	8
 | 
			
		||||
#define FPC_SIZE	4
 | 
			
		||||
#define FPC_PAD_SIZE	4 /* gcc insists on aligning the fpregs */
 | 
			
		||||
#define ACR_SIZE	4
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#define PTRACE_OLDSETOPTIONS         21
 | 
			
		||||
 | 
			
		||||
#ifndef __ASSEMBLY__
 | 
			
		||||
#include <linux/stddef.h>
 | 
			
		||||
#include <linux/types.h>
 | 
			
		||||
 | 
			
		||||
typedef union
 | 
			
		||||
{
 | 
			
		||||
	float   f;
 | 
			
		||||
	double  d;
 | 
			
		||||
        __u64   ui;
 | 
			
		||||
	struct
 | 
			
		||||
	{
 | 
			
		||||
		__u32 hi;
 | 
			
		||||
		__u32 lo;
 | 
			
		||||
	} fp;
 | 
			
		||||
} freg_t;
 | 
			
		||||
 | 
			
		||||
typedef struct
 | 
			
		||||
{
 | 
			
		||||
	__u32   fpc;
 | 
			
		||||
	freg_t  fprs[NUM_FPRS];              
 | 
			
		||||
} s390_fp_regs;
 | 
			
		||||
 | 
			
		||||
#define FPC_EXCEPTION_MASK      0xF8000000
 | 
			
		||||
#define FPC_FLAGS_MASK          0x00F80000
 | 
			
		||||
#define FPC_DXC_MASK            0x0000FF00
 | 
			
		||||
#define FPC_RM_MASK             0x00000003
 | 
			
		||||
#define FPC_VALID_MASK          0xF8F8FF03
 | 
			
		||||
 | 
			
		||||
/* this typedef defines how a Program Status Word looks like */
 | 
			
		||||
typedef struct 
 | 
			
		||||
{
 | 
			
		||||
        unsigned long mask;
 | 
			
		||||
        unsigned long addr;
 | 
			
		||||
} __attribute__ ((aligned(8))) psw_t;
 | 
			
		||||
 | 
			
		||||
typedef struct
 | 
			
		||||
{
 | 
			
		||||
	__u32	mask;
 | 
			
		||||
	__u32	addr;
 | 
			
		||||
} __attribute__ ((aligned(8))) psw_compat_t;
 | 
			
		||||
 | 
			
		||||
#ifndef __s390x__
 | 
			
		||||
 | 
			
		||||
#define PSW_MASK_PER		0x40000000UL
 | 
			
		||||
#define PSW_MASK_DAT		0x04000000UL
 | 
			
		||||
#define PSW_MASK_IO		0x02000000UL
 | 
			
		||||
#define PSW_MASK_EXT		0x01000000UL
 | 
			
		||||
#define PSW_MASK_KEY		0x00F00000UL
 | 
			
		||||
#define PSW_MASK_BASE		0x00080000UL	/* always one */
 | 
			
		||||
#define PSW_MASK_MCHECK		0x00040000UL
 | 
			
		||||
#define PSW_MASK_WAIT		0x00020000UL
 | 
			
		||||
#define PSW_MASK_PSTATE		0x00010000UL
 | 
			
		||||
#define PSW_MASK_ASC		0x0000C000UL
 | 
			
		||||
#define PSW_MASK_CC		0x00003000UL
 | 
			
		||||
#define PSW_MASK_PM		0x00000F00UL
 | 
			
		||||
#define PSW_MASK_RI		0x00000000UL
 | 
			
		||||
#define PSW_MASK_EA		0x00000000UL
 | 
			
		||||
#define PSW_MASK_BA		0x00000000UL
 | 
			
		||||
 | 
			
		||||
#define PSW_MASK_USER		0x00003F00UL
 | 
			
		||||
 | 
			
		||||
#define PSW_ADDR_AMODE		0x80000000UL
 | 
			
		||||
#define PSW_ADDR_INSN		0x7FFFFFFFUL
 | 
			
		||||
 | 
			
		||||
#define PSW_DEFAULT_KEY		(((unsigned long) PAGE_DEFAULT_ACC) << 20)
 | 
			
		||||
 | 
			
		||||
#define PSW_ASC_PRIMARY		0x00000000UL
 | 
			
		||||
#define PSW_ASC_ACCREG		0x00004000UL
 | 
			
		||||
#define PSW_ASC_SECONDARY	0x00008000UL
 | 
			
		||||
#define PSW_ASC_HOME		0x0000C000UL
 | 
			
		||||
 | 
			
		||||
#else /* __s390x__ */
 | 
			
		||||
 | 
			
		||||
#define PSW_MASK_PER		0x4000000000000000UL
 | 
			
		||||
#define PSW_MASK_DAT		0x0400000000000000UL
 | 
			
		||||
#define PSW_MASK_IO		0x0200000000000000UL
 | 
			
		||||
#define PSW_MASK_EXT		0x0100000000000000UL
 | 
			
		||||
#define PSW_MASK_BASE		0x0000000000000000UL
 | 
			
		||||
#define PSW_MASK_KEY		0x00F0000000000000UL
 | 
			
		||||
#define PSW_MASK_MCHECK		0x0004000000000000UL
 | 
			
		||||
#define PSW_MASK_WAIT		0x0002000000000000UL
 | 
			
		||||
#define PSW_MASK_PSTATE		0x0001000000000000UL
 | 
			
		||||
#define PSW_MASK_ASC		0x0000C00000000000UL
 | 
			
		||||
#define PSW_MASK_CC		0x0000300000000000UL
 | 
			
		||||
#define PSW_MASK_PM		0x00000F0000000000UL
 | 
			
		||||
#define PSW_MASK_RI		0x0000008000000000UL
 | 
			
		||||
#define PSW_MASK_EA		0x0000000100000000UL
 | 
			
		||||
#define PSW_MASK_BA		0x0000000080000000UL
 | 
			
		||||
 | 
			
		||||
#define PSW_MASK_USER		0x00003F8180000000UL
 | 
			
		||||
 | 
			
		||||
#define PSW_ADDR_AMODE		0x0000000000000000UL
 | 
			
		||||
#define PSW_ADDR_INSN		0xFFFFFFFFFFFFFFFFUL
 | 
			
		||||
 | 
			
		||||
#define PSW_DEFAULT_KEY		(((unsigned long) PAGE_DEFAULT_ACC) << 52)
 | 
			
		||||
 | 
			
		||||
#define PSW_ASC_PRIMARY		0x0000000000000000UL
 | 
			
		||||
#define PSW_ASC_ACCREG		0x0000400000000000UL
 | 
			
		||||
#define PSW_ASC_SECONDARY	0x0000800000000000UL
 | 
			
		||||
#define PSW_ASC_HOME		0x0000C00000000000UL
 | 
			
		||||
 | 
			
		||||
#endif /* __s390x__ */
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * The s390_regs structure is used to define the elf_gregset_t.
 | 
			
		||||
 */
 | 
			
		||||
typedef struct
 | 
			
		||||
{
 | 
			
		||||
	psw_t psw;
 | 
			
		||||
	unsigned long gprs[NUM_GPRS];
 | 
			
		||||
	unsigned int  acrs[NUM_ACRS];
 | 
			
		||||
	unsigned long orig_gpr2;
 | 
			
		||||
} s390_regs;
 | 
			
		||||
 | 
			
		||||
typedef struct
 | 
			
		||||
{
 | 
			
		||||
	psw_compat_t	psw;
 | 
			
		||||
	__u32		gprs[NUM_GPRS];
 | 
			
		||||
	__u32		acrs[NUM_ACRS];
 | 
			
		||||
	__u32		orig_gpr2;
 | 
			
		||||
} s390_compat_regs;
 | 
			
		||||
 | 
			
		||||
typedef struct
 | 
			
		||||
{
 | 
			
		||||
	__u32		gprs_high[NUM_GPRS];
 | 
			
		||||
} s390_compat_regs_high;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * Now for the user space program event recording (trace) definitions.
 | 
			
		||||
 * The following structures are used only for the ptrace interface, don't
 | 
			
		||||
 * touch or even look at it if you don't want to modify the user-space
 | 
			
		||||
 * ptrace interface. In particular stay away from it for in-kernel PER.
 | 
			
		||||
 */
 | 
			
		||||
typedef struct
 | 
			
		||||
{
 | 
			
		||||
	unsigned long cr[NUM_CR_WORDS];
 | 
			
		||||
} per_cr_words;
 | 
			
		||||
 | 
			
		||||
#define PER_EM_MASK 0xE8000000UL
 | 
			
		||||
 | 
			
		||||
typedef	struct
 | 
			
		||||
{
 | 
			
		||||
#ifdef __s390x__
 | 
			
		||||
	unsigned                       : 32;
 | 
			
		||||
#endif /* __s390x__ */
 | 
			
		||||
	unsigned em_branching          : 1;
 | 
			
		||||
	unsigned em_instruction_fetch  : 1;
 | 
			
		||||
	/*
 | 
			
		||||
	 * Switching on storage alteration automatically fixes
 | 
			
		||||
	 * the storage alteration event bit in the users std.
 | 
			
		||||
	 */
 | 
			
		||||
	unsigned em_storage_alteration : 1;
 | 
			
		||||
	unsigned em_gpr_alt_unused     : 1;
 | 
			
		||||
	unsigned em_store_real_address : 1;
 | 
			
		||||
	unsigned                       : 3;
 | 
			
		||||
	unsigned branch_addr_ctl       : 1;
 | 
			
		||||
	unsigned                       : 1;
 | 
			
		||||
	unsigned storage_alt_space_ctl : 1;
 | 
			
		||||
	unsigned                       : 21;
 | 
			
		||||
	unsigned long starting_addr;
 | 
			
		||||
	unsigned long ending_addr;
 | 
			
		||||
} per_cr_bits;
 | 
			
		||||
 | 
			
		||||
typedef struct
 | 
			
		||||
{
 | 
			
		||||
	unsigned short perc_atmid;
 | 
			
		||||
	unsigned long address;
 | 
			
		||||
	unsigned char access_id;
 | 
			
		||||
} per_lowcore_words;
 | 
			
		||||
 | 
			
		||||
typedef struct
 | 
			
		||||
{
 | 
			
		||||
	unsigned perc_branching          : 1;
 | 
			
		||||
	unsigned perc_instruction_fetch  : 1;
 | 
			
		||||
	unsigned perc_storage_alteration : 1;
 | 
			
		||||
	unsigned perc_gpr_alt_unused     : 1;
 | 
			
		||||
	unsigned perc_store_real_address : 1;
 | 
			
		||||
	unsigned                         : 3;
 | 
			
		||||
	unsigned atmid_psw_bit_31        : 1;
 | 
			
		||||
	unsigned atmid_validity_bit      : 1;
 | 
			
		||||
	unsigned atmid_psw_bit_32        : 1;
 | 
			
		||||
	unsigned atmid_psw_bit_5         : 1;
 | 
			
		||||
	unsigned atmid_psw_bit_16        : 1;
 | 
			
		||||
	unsigned atmid_psw_bit_17        : 1;
 | 
			
		||||
	unsigned si                      : 2;
 | 
			
		||||
	unsigned long address;
 | 
			
		||||
	unsigned                         : 4;
 | 
			
		||||
	unsigned access_id               : 4;
 | 
			
		||||
} per_lowcore_bits;
 | 
			
		||||
 | 
			
		||||
typedef struct
 | 
			
		||||
{
 | 
			
		||||
	union {
 | 
			
		||||
		per_cr_words   words;
 | 
			
		||||
		per_cr_bits    bits;
 | 
			
		||||
	} control_regs;
 | 
			
		||||
	/*
 | 
			
		||||
	 * Use these flags instead of setting em_instruction_fetch
 | 
			
		||||
	 * directly they are used so that single stepping can be
 | 
			
		||||
	 * switched on & off while not affecting other tracing
 | 
			
		||||
	 */
 | 
			
		||||
	unsigned  single_step       : 1;
 | 
			
		||||
	unsigned  instruction_fetch : 1;
 | 
			
		||||
	unsigned                    : 30;
 | 
			
		||||
	/*
 | 
			
		||||
	 * These addresses are copied into cr10 & cr11 if single
 | 
			
		||||
	 * stepping is switched off
 | 
			
		||||
	 */
 | 
			
		||||
	unsigned long starting_addr;
 | 
			
		||||
	unsigned long ending_addr;
 | 
			
		||||
	union {
 | 
			
		||||
		per_lowcore_words words;
 | 
			
		||||
		per_lowcore_bits  bits;
 | 
			
		||||
	} lowcore; 
 | 
			
		||||
} per_struct;
 | 
			
		||||
 | 
			
		||||
typedef struct
 | 
			
		||||
{
 | 
			
		||||
	unsigned int  len;
 | 
			
		||||
	unsigned long kernel_addr;
 | 
			
		||||
	unsigned long process_addr;
 | 
			
		||||
} ptrace_area;
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * S/390 specific non posix ptrace requests. I chose unusual values so
 | 
			
		||||
 * they are unlikely to clash with future ptrace definitions.
 | 
			
		||||
 */
 | 
			
		||||
#define PTRACE_PEEKUSR_AREA           0x5000
 | 
			
		||||
#define PTRACE_POKEUSR_AREA           0x5001
 | 
			
		||||
#define PTRACE_PEEKTEXT_AREA	      0x5002
 | 
			
		||||
#define PTRACE_PEEKDATA_AREA	      0x5003
 | 
			
		||||
#define PTRACE_POKETEXT_AREA	      0x5004
 | 
			
		||||
#define PTRACE_POKEDATA_AREA 	      0x5005
 | 
			
		||||
#define PTRACE_GET_LAST_BREAK	      0x5006
 | 
			
		||||
#define PTRACE_PEEK_SYSTEM_CALL       0x5007
 | 
			
		||||
#define PTRACE_POKE_SYSTEM_CALL	      0x5008
 | 
			
		||||
#define PTRACE_ENABLE_TE	      0x5009
 | 
			
		||||
#define PTRACE_DISABLE_TE	      0x5010
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * PT_PROT definition is loosely based on hppa bsd definition in
 | 
			
		||||
 * gdb/hppab-nat.c
 | 
			
		||||
 */
 | 
			
		||||
#define PTRACE_PROT                       21
 | 
			
		||||
 | 
			
		||||
typedef enum
 | 
			
		||||
{
 | 
			
		||||
	ptprot_set_access_watchpoint,
 | 
			
		||||
	ptprot_set_write_watchpoint,
 | 
			
		||||
	ptprot_disable_watchpoint
 | 
			
		||||
} ptprot_flags;
 | 
			
		||||
 | 
			
		||||
typedef struct
 | 
			
		||||
{
 | 
			
		||||
	unsigned long lowaddr;
 | 
			
		||||
	unsigned long hiaddr;
 | 
			
		||||
	ptprot_flags prot;
 | 
			
		||||
} ptprot_area;                     
 | 
			
		||||
 | 
			
		||||
/* Sequence of bytes for breakpoint illegal instruction.  */
 | 
			
		||||
#define S390_BREAKPOINT     {0x0,0x1}
 | 
			
		||||
#define S390_BREAKPOINT_U16 ((__u16)0x0001)
 | 
			
		||||
#define S390_SYSCALL_OPCODE ((__u16)0x0a00)
 | 
			
		||||
#define S390_SYSCALL_SIZE   2
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * The user_regs_struct defines the way the user registers are
 | 
			
		||||
 * store on the stack for signal handling.
 | 
			
		||||
 */
 | 
			
		||||
struct user_regs_struct
 | 
			
		||||
{
 | 
			
		||||
	psw_t psw;
 | 
			
		||||
	unsigned long gprs[NUM_GPRS];
 | 
			
		||||
	unsigned int  acrs[NUM_ACRS];
 | 
			
		||||
	unsigned long orig_gpr2;
 | 
			
		||||
	s390_fp_regs fp_regs;
 | 
			
		||||
	/*
 | 
			
		||||
	 * These per registers are in here so that gdb can modify them
 | 
			
		||||
	 * itself as there is no "official" ptrace interface for hardware
 | 
			
		||||
	 * watchpoints. This is the way intel does it.
 | 
			
		||||
	 */
 | 
			
		||||
	per_struct per_info;
 | 
			
		||||
	unsigned long ieee_instruction_pointer;	/* obsolete, always 0 */
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
#endif /* __ASSEMBLY__ */
 | 
			
		||||
 | 
			
		||||
#endif /* _UAPI_S390_PTRACE_H */
 | 
			
		||||
							
								
								
									
										16
									
								
								arch/s390/include/uapi/asm/schid.h
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								arch/s390/include/uapi/asm/schid.h
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,16 @@
 | 
			
		|||
#ifndef _UAPIASM_SCHID_H
 | 
			
		||||
#define _UAPIASM_SCHID_H
 | 
			
		||||
 | 
			
		||||
#include <linux/types.h>
 | 
			
		||||
 | 
			
		||||
struct subchannel_id {
 | 
			
		||||
	__u32 cssid : 8;
 | 
			
		||||
	__u32 : 4;
 | 
			
		||||
	__u32 m : 1;
 | 
			
		||||
	__u32 ssid : 2;
 | 
			
		||||
	__u32 one : 1;
 | 
			
		||||
	__u32 sch_no : 16;
 | 
			
		||||
} __attribute__ ((packed, aligned(4)));
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#endif /* _UAPIASM_SCHID_H */
 | 
			
		||||
							
								
								
									
										13
									
								
								arch/s390/include/uapi/asm/setup.h
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										13
									
								
								arch/s390/include/uapi/asm/setup.h
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,13 @@
 | 
			
		|||
/*
 | 
			
		||||
 *  S390 version
 | 
			
		||||
 *    Copyright IBM Corp. 1999, 2010
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#ifndef _UAPI_ASM_S390_SETUP_H
 | 
			
		||||
#define _UAPI_ASM_S390_SETUP_H
 | 
			
		||||
 | 
			
		||||
#define COMMAND_LINE_SIZE	4096
 | 
			
		||||
 | 
			
		||||
#define ARCH_COMMAND_LINE_SIZE	896
 | 
			
		||||
 | 
			
		||||
#endif /* _UAPI_ASM_S390_SETUP_H */
 | 
			
		||||
							
								
								
									
										135
									
								
								arch/s390/include/uapi/asm/signal.h
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										135
									
								
								arch/s390/include/uapi/asm/signal.h
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,135 @@
 | 
			
		|||
/*
 | 
			
		||||
 *  S390 version
 | 
			
		||||
 *
 | 
			
		||||
 *  Derived from "include/asm-i386/signal.h"
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#ifndef _UAPI_ASMS390_SIGNAL_H
 | 
			
		||||
#define _UAPI_ASMS390_SIGNAL_H
 | 
			
		||||
 | 
			
		||||
#include <linux/types.h>
 | 
			
		||||
#include <linux/time.h>
 | 
			
		||||
 | 
			
		||||
/* Avoid too many header ordering problems.  */
 | 
			
		||||
struct siginfo;
 | 
			
		||||
struct pt_regs;
 | 
			
		||||
 | 
			
		||||
#ifndef __KERNEL__
 | 
			
		||||
/* Here we must cater to libcs that poke about in kernel headers.  */
 | 
			
		||||
 | 
			
		||||
#define NSIG            32
 | 
			
		||||
typedef unsigned long sigset_t;
 | 
			
		||||
 | 
			
		||||
#endif /* __KERNEL__ */
 | 
			
		||||
 | 
			
		||||
#define SIGHUP           1
 | 
			
		||||
#define SIGINT           2
 | 
			
		||||
#define SIGQUIT          3
 | 
			
		||||
#define SIGILL           4
 | 
			
		||||
#define SIGTRAP          5
 | 
			
		||||
#define SIGABRT          6
 | 
			
		||||
#define SIGIOT           6
 | 
			
		||||
#define SIGBUS           7
 | 
			
		||||
#define SIGFPE           8
 | 
			
		||||
#define SIGKILL          9
 | 
			
		||||
#define SIGUSR1         10
 | 
			
		||||
#define SIGSEGV         11
 | 
			
		||||
#define SIGUSR2         12
 | 
			
		||||
#define SIGPIPE         13
 | 
			
		||||
#define SIGALRM         14
 | 
			
		||||
#define SIGTERM         15
 | 
			
		||||
#define SIGSTKFLT       16
 | 
			
		||||
#define SIGCHLD         17
 | 
			
		||||
#define SIGCONT         18
 | 
			
		||||
#define SIGSTOP         19
 | 
			
		||||
#define SIGTSTP         20
 | 
			
		||||
#define SIGTTIN         21
 | 
			
		||||
#define SIGTTOU         22
 | 
			
		||||
#define SIGURG          23
 | 
			
		||||
#define SIGXCPU         24
 | 
			
		||||
#define SIGXFSZ         25
 | 
			
		||||
#define SIGVTALRM       26
 | 
			
		||||
#define SIGPROF         27
 | 
			
		||||
#define SIGWINCH        28
 | 
			
		||||
#define SIGIO           29
 | 
			
		||||
#define SIGPOLL         SIGIO
 | 
			
		||||
/*
 | 
			
		||||
#define SIGLOST         29
 | 
			
		||||
*/
 | 
			
		||||
#define SIGPWR          30
 | 
			
		||||
#define SIGSYS		31
 | 
			
		||||
#define SIGUNUSED       31
 | 
			
		||||
 | 
			
		||||
/* These should not be considered constants from userland.  */
 | 
			
		||||
#define SIGRTMIN        32
 | 
			
		||||
#define SIGRTMAX        _NSIG
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * SA_FLAGS values:
 | 
			
		||||
 *
 | 
			
		||||
 * SA_ONSTACK indicates that a registered stack_t will be used.
 | 
			
		||||
 * SA_RESTART flag to get restarting signals (which were the default long ago)
 | 
			
		||||
 * SA_NOCLDSTOP flag to turn off SIGCHLD when children stop.
 | 
			
		||||
 * SA_RESETHAND clears the handler when the signal is delivered.
 | 
			
		||||
 * SA_NOCLDWAIT flag on SIGCHLD to inhibit zombies.
 | 
			
		||||
 * SA_NODEFER prevents the current signal from being masked in the handler.
 | 
			
		||||
 *
 | 
			
		||||
 * SA_ONESHOT and SA_NOMASK are the historical Linux names for the Single
 | 
			
		||||
 * Unix names RESETHAND and NODEFER respectively.
 | 
			
		||||
 */
 | 
			
		||||
#define SA_NOCLDSTOP    0x00000001
 | 
			
		||||
#define SA_NOCLDWAIT    0x00000002
 | 
			
		||||
#define SA_SIGINFO      0x00000004
 | 
			
		||||
#define SA_ONSTACK      0x08000000
 | 
			
		||||
#define SA_RESTART      0x10000000
 | 
			
		||||
#define SA_NODEFER      0x40000000
 | 
			
		||||
#define SA_RESETHAND    0x80000000
 | 
			
		||||
 | 
			
		||||
#define SA_NOMASK       SA_NODEFER
 | 
			
		||||
#define SA_ONESHOT      SA_RESETHAND
 | 
			
		||||
 | 
			
		||||
#define SA_RESTORER     0x04000000
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * sigaltstack controls
 | 
			
		||||
 */
 | 
			
		||||
#define SS_ONSTACK      1
 | 
			
		||||
#define SS_DISABLE      2
 | 
			
		||||
 | 
			
		||||
#define MINSIGSTKSZ     2048
 | 
			
		||||
#define SIGSTKSZ        8192
 | 
			
		||||
 | 
			
		||||
#include <asm-generic/signal-defs.h>
 | 
			
		||||
 | 
			
		||||
#ifndef __KERNEL__
 | 
			
		||||
/* Here we must cater to libcs that poke about in kernel headers.  */
 | 
			
		||||
 | 
			
		||||
struct sigaction {
 | 
			
		||||
        union {
 | 
			
		||||
          __sighandler_t _sa_handler;
 | 
			
		||||
          void (*_sa_sigaction)(int, struct siginfo *, void *);
 | 
			
		||||
        } _u;
 | 
			
		||||
#ifndef __s390x__ /* lovely */
 | 
			
		||||
        sigset_t sa_mask;
 | 
			
		||||
        unsigned long sa_flags;
 | 
			
		||||
        void (*sa_restorer)(void);
 | 
			
		||||
#else  /* __s390x__ */
 | 
			
		||||
        unsigned long sa_flags;
 | 
			
		||||
        void (*sa_restorer)(void);
 | 
			
		||||
	sigset_t sa_mask;
 | 
			
		||||
#endif /* __s390x__ */
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
#define sa_handler      _u._sa_handler
 | 
			
		||||
#define sa_sigaction    _u._sa_sigaction
 | 
			
		||||
 | 
			
		||||
#endif /* __KERNEL__ */
 | 
			
		||||
 | 
			
		||||
typedef struct sigaltstack {
 | 
			
		||||
        void __user *ss_sp;
 | 
			
		||||
        int ss_flags;
 | 
			
		||||
        size_t ss_size;
 | 
			
		||||
} stack_t;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#endif /* _UAPI_ASMS390_SIGNAL_H */
 | 
			
		||||
							
								
								
									
										49
									
								
								arch/s390/include/uapi/asm/termios.h
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										49
									
								
								arch/s390/include/uapi/asm/termios.h
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,49 @@
 | 
			
		|||
/*
 | 
			
		||||
 *  S390 version
 | 
			
		||||
 *
 | 
			
		||||
 *  Derived from "include/asm-i386/termios.h"
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#ifndef _UAPI_S390_TERMIOS_H
 | 
			
		||||
#define _UAPI_S390_TERMIOS_H
 | 
			
		||||
 | 
			
		||||
#include <asm/termbits.h>
 | 
			
		||||
#include <asm/ioctls.h>
 | 
			
		||||
 | 
			
		||||
struct winsize {
 | 
			
		||||
	unsigned short ws_row;
 | 
			
		||||
	unsigned short ws_col;
 | 
			
		||||
	unsigned short ws_xpixel;
 | 
			
		||||
	unsigned short ws_ypixel;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
#define NCC 8
 | 
			
		||||
struct termio {
 | 
			
		||||
	unsigned short c_iflag;		/* input mode flags */
 | 
			
		||||
	unsigned short c_oflag;		/* output mode flags */
 | 
			
		||||
	unsigned short c_cflag;		/* control mode flags */
 | 
			
		||||
	unsigned short c_lflag;		/* local mode flags */
 | 
			
		||||
	unsigned char c_line;		/* line discipline */
 | 
			
		||||
	unsigned char c_cc[NCC];	/* control characters */
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
/* modem lines */
 | 
			
		||||
#define TIOCM_LE	0x001
 | 
			
		||||
#define TIOCM_DTR	0x002
 | 
			
		||||
#define TIOCM_RTS	0x004
 | 
			
		||||
#define TIOCM_ST	0x008
 | 
			
		||||
#define TIOCM_SR	0x010
 | 
			
		||||
#define TIOCM_CTS	0x020
 | 
			
		||||
#define TIOCM_CAR	0x040
 | 
			
		||||
#define TIOCM_RNG	0x080
 | 
			
		||||
#define TIOCM_DSR	0x100
 | 
			
		||||
#define TIOCM_CD	TIOCM_CAR
 | 
			
		||||
#define TIOCM_RI	TIOCM_RNG
 | 
			
		||||
#define TIOCM_OUT1	0x2000
 | 
			
		||||
#define TIOCM_OUT2	0x4000
 | 
			
		||||
#define TIOCM_LOOP	0x8000
 | 
			
		||||
 | 
			
		||||
/* ioctl (fd, TIOCSERGETLSR, &result) where result may be as below */
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#endif /* _UAPI_S390_TERMIOS_H */
 | 
			
		||||
							
								
								
									
										22
									
								
								arch/s390/include/uapi/asm/types.h
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								arch/s390/include/uapi/asm/types.h
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,22 @@
 | 
			
		|||
/*
 | 
			
		||||
 *  S390 version
 | 
			
		||||
 *
 | 
			
		||||
 *  Derived from "include/asm-i386/types.h"
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#ifndef _UAPI_S390_TYPES_H
 | 
			
		||||
#define _UAPI_S390_TYPES_H
 | 
			
		||||
 | 
			
		||||
#include <asm-generic/int-ll64.h>
 | 
			
		||||
 | 
			
		||||
#ifndef __ASSEMBLY__
 | 
			
		||||
 | 
			
		||||
/* A address type so that arithmetic can be done on it & it can be upgraded to
 | 
			
		||||
   64 bit when necessary 
 | 
			
		||||
*/
 | 
			
		||||
typedef unsigned long addr_t; 
 | 
			
		||||
typedef __signed__ long saddr_t;
 | 
			
		||||
 | 
			
		||||
#endif /* __ASSEMBLY__ */
 | 
			
		||||
 | 
			
		||||
#endif /* _UAPI_S390_TYPES_H */
 | 
			
		||||
							
								
								
									
										374
									
								
								arch/s390/include/uapi/asm/unistd.h
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										374
									
								
								arch/s390/include/uapi/asm/unistd.h
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,374 @@
 | 
			
		|||
/*
 | 
			
		||||
 *  S390 version
 | 
			
		||||
 *
 | 
			
		||||
 *  Derived from "include/asm-i386/unistd.h"
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#ifndef _UAPI_ASM_S390_UNISTD_H_
 | 
			
		||||
#define _UAPI_ASM_S390_UNISTD_H_
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * This file contains the system call numbers.
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#define __NR_exit                 1
 | 
			
		||||
#define __NR_fork                 2
 | 
			
		||||
#define __NR_read                 3
 | 
			
		||||
#define __NR_write                4
 | 
			
		||||
#define __NR_open                 5
 | 
			
		||||
#define __NR_close                6
 | 
			
		||||
#define __NR_restart_syscall	  7
 | 
			
		||||
#define __NR_creat                8
 | 
			
		||||
#define __NR_link                 9
 | 
			
		||||
#define __NR_unlink              10
 | 
			
		||||
#define __NR_execve              11
 | 
			
		||||
#define __NR_chdir               12
 | 
			
		||||
#define __NR_mknod               14
 | 
			
		||||
#define __NR_chmod               15
 | 
			
		||||
#define __NR_lseek               19
 | 
			
		||||
#define __NR_getpid              20
 | 
			
		||||
#define __NR_mount               21
 | 
			
		||||
#define __NR_umount              22
 | 
			
		||||
#define __NR_ptrace              26
 | 
			
		||||
#define __NR_alarm               27
 | 
			
		||||
#define __NR_pause               29
 | 
			
		||||
#define __NR_utime               30
 | 
			
		||||
#define __NR_access              33
 | 
			
		||||
#define __NR_nice                34
 | 
			
		||||
#define __NR_sync                36
 | 
			
		||||
#define __NR_kill                37
 | 
			
		||||
#define __NR_rename              38
 | 
			
		||||
#define __NR_mkdir               39
 | 
			
		||||
#define __NR_rmdir               40
 | 
			
		||||
#define __NR_dup                 41
 | 
			
		||||
#define __NR_pipe                42
 | 
			
		||||
#define __NR_times               43
 | 
			
		||||
#define __NR_brk                 45
 | 
			
		||||
#define __NR_signal              48
 | 
			
		||||
#define __NR_acct                51
 | 
			
		||||
#define __NR_umount2             52
 | 
			
		||||
#define __NR_ioctl               54
 | 
			
		||||
#define __NR_fcntl               55
 | 
			
		||||
#define __NR_setpgid             57
 | 
			
		||||
#define __NR_umask               60
 | 
			
		||||
#define __NR_chroot              61
 | 
			
		||||
#define __NR_ustat               62
 | 
			
		||||
#define __NR_dup2                63
 | 
			
		||||
#define __NR_getppid             64
 | 
			
		||||
#define __NR_getpgrp             65
 | 
			
		||||
#define __NR_setsid              66
 | 
			
		||||
#define __NR_sigaction           67
 | 
			
		||||
#define __NR_sigsuspend          72
 | 
			
		||||
#define __NR_sigpending          73
 | 
			
		||||
#define __NR_sethostname         74
 | 
			
		||||
#define __NR_setrlimit           75
 | 
			
		||||
#define __NR_getrusage           77
 | 
			
		||||
#define __NR_gettimeofday        78
 | 
			
		||||
#define __NR_settimeofday        79
 | 
			
		||||
#define __NR_symlink             83
 | 
			
		||||
#define __NR_readlink            85
 | 
			
		||||
#define __NR_uselib              86
 | 
			
		||||
#define __NR_swapon              87
 | 
			
		||||
#define __NR_reboot              88
 | 
			
		||||
#define __NR_readdir             89
 | 
			
		||||
#define __NR_mmap                90
 | 
			
		||||
#define __NR_munmap              91
 | 
			
		||||
#define __NR_truncate            92
 | 
			
		||||
#define __NR_ftruncate           93
 | 
			
		||||
#define __NR_fchmod              94
 | 
			
		||||
#define __NR_getpriority         96
 | 
			
		||||
#define __NR_setpriority         97
 | 
			
		||||
#define __NR_statfs              99
 | 
			
		||||
#define __NR_fstatfs            100
 | 
			
		||||
#define __NR_socketcall         102
 | 
			
		||||
#define __NR_syslog             103
 | 
			
		||||
#define __NR_setitimer          104
 | 
			
		||||
#define __NR_getitimer          105
 | 
			
		||||
#define __NR_stat               106
 | 
			
		||||
#define __NR_lstat              107
 | 
			
		||||
#define __NR_fstat              108
 | 
			
		||||
#define __NR_lookup_dcookie     110
 | 
			
		||||
#define __NR_vhangup            111
 | 
			
		||||
#define __NR_idle               112
 | 
			
		||||
#define __NR_wait4              114
 | 
			
		||||
#define __NR_swapoff            115
 | 
			
		||||
#define __NR_sysinfo            116
 | 
			
		||||
#define __NR_ipc                117
 | 
			
		||||
#define __NR_fsync              118
 | 
			
		||||
#define __NR_sigreturn          119
 | 
			
		||||
#define __NR_clone              120
 | 
			
		||||
#define __NR_setdomainname      121
 | 
			
		||||
#define __NR_uname              122
 | 
			
		||||
#define __NR_adjtimex           124
 | 
			
		||||
#define __NR_mprotect           125
 | 
			
		||||
#define __NR_sigprocmask        126
 | 
			
		||||
#define __NR_create_module      127
 | 
			
		||||
#define __NR_init_module        128
 | 
			
		||||
#define __NR_delete_module      129
 | 
			
		||||
#define __NR_get_kernel_syms    130
 | 
			
		||||
#define __NR_quotactl           131
 | 
			
		||||
#define __NR_getpgid            132
 | 
			
		||||
#define __NR_fchdir             133
 | 
			
		||||
#define __NR_bdflush            134
 | 
			
		||||
#define __NR_sysfs              135
 | 
			
		||||
#define __NR_personality        136
 | 
			
		||||
#define __NR_afs_syscall        137 /* Syscall for Andrew File System */
 | 
			
		||||
#define __NR_getdents           141
 | 
			
		||||
#define __NR_flock              143
 | 
			
		||||
#define __NR_msync              144
 | 
			
		||||
#define __NR_readv              145
 | 
			
		||||
#define __NR_writev             146
 | 
			
		||||
#define __NR_getsid             147
 | 
			
		||||
#define __NR_fdatasync          148
 | 
			
		||||
#define __NR__sysctl            149
 | 
			
		||||
#define __NR_mlock              150
 | 
			
		||||
#define __NR_munlock            151
 | 
			
		||||
#define __NR_mlockall           152
 | 
			
		||||
#define __NR_munlockall         153
 | 
			
		||||
#define __NR_sched_setparam             154
 | 
			
		||||
#define __NR_sched_getparam             155
 | 
			
		||||
#define __NR_sched_setscheduler         156
 | 
			
		||||
#define __NR_sched_getscheduler         157
 | 
			
		||||
#define __NR_sched_yield                158
 | 
			
		||||
#define __NR_sched_get_priority_max     159
 | 
			
		||||
#define __NR_sched_get_priority_min     160
 | 
			
		||||
#define __NR_sched_rr_get_interval      161
 | 
			
		||||
#define __NR_nanosleep          162
 | 
			
		||||
#define __NR_mremap             163
 | 
			
		||||
#define __NR_query_module       167
 | 
			
		||||
#define __NR_poll               168
 | 
			
		||||
#define __NR_nfsservctl         169
 | 
			
		||||
#define __NR_prctl              172
 | 
			
		||||
#define __NR_rt_sigreturn       173
 | 
			
		||||
#define __NR_rt_sigaction       174
 | 
			
		||||
#define __NR_rt_sigprocmask     175
 | 
			
		||||
#define __NR_rt_sigpending      176
 | 
			
		||||
#define __NR_rt_sigtimedwait    177
 | 
			
		||||
#define __NR_rt_sigqueueinfo    178
 | 
			
		||||
#define __NR_rt_sigsuspend      179
 | 
			
		||||
#define __NR_pread64            180
 | 
			
		||||
#define __NR_pwrite64           181
 | 
			
		||||
#define __NR_getcwd             183
 | 
			
		||||
#define __NR_capget             184
 | 
			
		||||
#define __NR_capset             185
 | 
			
		||||
#define __NR_sigaltstack        186
 | 
			
		||||
#define __NR_sendfile           187
 | 
			
		||||
#define __NR_getpmsg		188
 | 
			
		||||
#define __NR_putpmsg		189
 | 
			
		||||
#define __NR_vfork		190
 | 
			
		||||
#define __NR_pivot_root         217
 | 
			
		||||
#define __NR_mincore            218
 | 
			
		||||
#define __NR_madvise            219
 | 
			
		||||
#define __NR_getdents64		220
 | 
			
		||||
#define __NR_readahead		222
 | 
			
		||||
#define __NR_setxattr		224
 | 
			
		||||
#define __NR_lsetxattr		225
 | 
			
		||||
#define __NR_fsetxattr		226
 | 
			
		||||
#define __NR_getxattr		227
 | 
			
		||||
#define __NR_lgetxattr		228
 | 
			
		||||
#define __NR_fgetxattr		229
 | 
			
		||||
#define __NR_listxattr		230
 | 
			
		||||
#define __NR_llistxattr		231
 | 
			
		||||
#define __NR_flistxattr		232
 | 
			
		||||
#define __NR_removexattr	233
 | 
			
		||||
#define __NR_lremovexattr	234
 | 
			
		||||
#define __NR_fremovexattr	235
 | 
			
		||||
#define __NR_gettid		236
 | 
			
		||||
#define __NR_tkill		237
 | 
			
		||||
#define __NR_futex		238
 | 
			
		||||
#define __NR_sched_setaffinity	239
 | 
			
		||||
#define __NR_sched_getaffinity	240
 | 
			
		||||
#define __NR_tgkill		241
 | 
			
		||||
/* Number 242 is reserved for tux */
 | 
			
		||||
#define __NR_io_setup		243
 | 
			
		||||
#define __NR_io_destroy		244
 | 
			
		||||
#define __NR_io_getevents	245
 | 
			
		||||
#define __NR_io_submit		246
 | 
			
		||||
#define __NR_io_cancel		247
 | 
			
		||||
#define __NR_exit_group		248
 | 
			
		||||
#define __NR_epoll_create	249
 | 
			
		||||
#define __NR_epoll_ctl		250
 | 
			
		||||
#define __NR_epoll_wait		251
 | 
			
		||||
#define __NR_set_tid_address	252
 | 
			
		||||
#define __NR_fadvise64		253
 | 
			
		||||
#define __NR_timer_create	254
 | 
			
		||||
#define __NR_timer_settime	(__NR_timer_create+1)
 | 
			
		||||
#define __NR_timer_gettime	(__NR_timer_create+2)
 | 
			
		||||
#define __NR_timer_getoverrun	(__NR_timer_create+3)
 | 
			
		||||
#define __NR_timer_delete	(__NR_timer_create+4)
 | 
			
		||||
#define __NR_clock_settime	(__NR_timer_create+5)
 | 
			
		||||
#define __NR_clock_gettime	(__NR_timer_create+6)
 | 
			
		||||
#define __NR_clock_getres	(__NR_timer_create+7)
 | 
			
		||||
#define __NR_clock_nanosleep	(__NR_timer_create+8)
 | 
			
		||||
/* Number 263 is reserved for vserver */
 | 
			
		||||
#define __NR_statfs64		265
 | 
			
		||||
#define __NR_fstatfs64		266
 | 
			
		||||
#define __NR_remap_file_pages	267
 | 
			
		||||
/* Number 268 is reserved for new sys_mbind */
 | 
			
		||||
/* Number 269 is reserved for new sys_get_mempolicy */
 | 
			
		||||
/* Number 270 is reserved for new sys_set_mempolicy */
 | 
			
		||||
#define __NR_mq_open		271
 | 
			
		||||
#define __NR_mq_unlink		272
 | 
			
		||||
#define __NR_mq_timedsend	273
 | 
			
		||||
#define __NR_mq_timedreceive	274
 | 
			
		||||
#define __NR_mq_notify		275
 | 
			
		||||
#define __NR_mq_getsetattr	276
 | 
			
		||||
#define __NR_kexec_load		277
 | 
			
		||||
#define __NR_add_key		278
 | 
			
		||||
#define __NR_request_key	279
 | 
			
		||||
#define __NR_keyctl		280
 | 
			
		||||
#define __NR_waitid		281
 | 
			
		||||
#define __NR_ioprio_set		282
 | 
			
		||||
#define __NR_ioprio_get		283
 | 
			
		||||
#define __NR_inotify_init	284
 | 
			
		||||
#define __NR_inotify_add_watch	285
 | 
			
		||||
#define __NR_inotify_rm_watch	286
 | 
			
		||||
/* Number 287 is reserved for new sys_migrate_pages */
 | 
			
		||||
#define __NR_openat		288
 | 
			
		||||
#define __NR_mkdirat		289
 | 
			
		||||
#define __NR_mknodat		290
 | 
			
		||||
#define __NR_fchownat		291
 | 
			
		||||
#define __NR_futimesat		292
 | 
			
		||||
#define __NR_unlinkat		294
 | 
			
		||||
#define __NR_renameat		295
 | 
			
		||||
#define __NR_linkat		296
 | 
			
		||||
#define __NR_symlinkat		297
 | 
			
		||||
#define __NR_readlinkat		298
 | 
			
		||||
#define __NR_fchmodat		299
 | 
			
		||||
#define __NR_faccessat		300
 | 
			
		||||
#define __NR_pselect6		301
 | 
			
		||||
#define __NR_ppoll		302
 | 
			
		||||
#define __NR_unshare		303
 | 
			
		||||
#define __NR_set_robust_list	304
 | 
			
		||||
#define __NR_get_robust_list	305
 | 
			
		||||
#define __NR_splice		306
 | 
			
		||||
#define __NR_sync_file_range	307
 | 
			
		||||
#define __NR_tee		308
 | 
			
		||||
#define __NR_vmsplice		309
 | 
			
		||||
/* Number 310 is reserved for new sys_move_pages */
 | 
			
		||||
#define __NR_getcpu		311
 | 
			
		||||
#define __NR_epoll_pwait	312
 | 
			
		||||
#define __NR_utimes		313
 | 
			
		||||
#define __NR_fallocate		314
 | 
			
		||||
#define __NR_utimensat		315
 | 
			
		||||
#define __NR_signalfd		316
 | 
			
		||||
#define __NR_timerfd		317
 | 
			
		||||
#define __NR_eventfd		318
 | 
			
		||||
#define __NR_timerfd_create	319
 | 
			
		||||
#define __NR_timerfd_settime	320
 | 
			
		||||
#define __NR_timerfd_gettime	321
 | 
			
		||||
#define __NR_signalfd4		322
 | 
			
		||||
#define __NR_eventfd2		323
 | 
			
		||||
#define __NR_inotify_init1	324
 | 
			
		||||
#define __NR_pipe2		325
 | 
			
		||||
#define __NR_dup3		326
 | 
			
		||||
#define __NR_epoll_create1	327
 | 
			
		||||
#define	__NR_preadv		328
 | 
			
		||||
#define	__NR_pwritev		329
 | 
			
		||||
#define __NR_rt_tgsigqueueinfo	330
 | 
			
		||||
#define __NR_perf_event_open	331
 | 
			
		||||
#define __NR_fanotify_init	332
 | 
			
		||||
#define __NR_fanotify_mark	333
 | 
			
		||||
#define __NR_prlimit64		334
 | 
			
		||||
#define __NR_name_to_handle_at	335
 | 
			
		||||
#define __NR_open_by_handle_at	336
 | 
			
		||||
#define __NR_clock_adjtime	337
 | 
			
		||||
#define __NR_syncfs		338
 | 
			
		||||
#define __NR_setns		339
 | 
			
		||||
#define __NR_process_vm_readv	340
 | 
			
		||||
#define __NR_process_vm_writev	341
 | 
			
		||||
#define __NR_s390_runtime_instr 342
 | 
			
		||||
#define __NR_kcmp		343
 | 
			
		||||
#define NR_syscalls 344
 | 
			
		||||
 | 
			
		||||
/* 
 | 
			
		||||
 * There are some system calls that are not present on 64 bit, some
 | 
			
		||||
 * have a different name although they do the same (e.g. __NR_chown32
 | 
			
		||||
 * is __NR_chown on 64 bit).
 | 
			
		||||
 */
 | 
			
		||||
#ifndef __s390x__
 | 
			
		||||
 | 
			
		||||
#define __NR_time		 13
 | 
			
		||||
#define __NR_lchown		 16
 | 
			
		||||
#define __NR_setuid		 23
 | 
			
		||||
#define __NR_getuid		 24
 | 
			
		||||
#define __NR_stime		 25
 | 
			
		||||
#define __NR_setgid		 46
 | 
			
		||||
#define __NR_getgid		 47
 | 
			
		||||
#define __NR_geteuid		 49
 | 
			
		||||
#define __NR_getegid		 50
 | 
			
		||||
#define __NR_setreuid		 70
 | 
			
		||||
#define __NR_setregid		 71
 | 
			
		||||
#define __NR_getrlimit		 76
 | 
			
		||||
#define __NR_getgroups		 80
 | 
			
		||||
#define __NR_setgroups		 81
 | 
			
		||||
#define __NR_fchown		 95
 | 
			
		||||
#define __NR_ioperm		101
 | 
			
		||||
#define __NR_setfsuid		138
 | 
			
		||||
#define __NR_setfsgid		139
 | 
			
		||||
#define __NR__llseek		140
 | 
			
		||||
#define __NR__newselect 	142
 | 
			
		||||
#define __NR_setresuid		164
 | 
			
		||||
#define __NR_getresuid		165
 | 
			
		||||
#define __NR_setresgid		170
 | 
			
		||||
#define __NR_getresgid		171
 | 
			
		||||
#define __NR_chown		182
 | 
			
		||||
#define __NR_ugetrlimit		191	/* SuS compliant getrlimit */
 | 
			
		||||
#define __NR_mmap2		192
 | 
			
		||||
#define __NR_truncate64		193
 | 
			
		||||
#define __NR_ftruncate64	194
 | 
			
		||||
#define __NR_stat64		195
 | 
			
		||||
#define __NR_lstat64		196
 | 
			
		||||
#define __NR_fstat64		197
 | 
			
		||||
#define __NR_lchown32		198
 | 
			
		||||
#define __NR_getuid32		199
 | 
			
		||||
#define __NR_getgid32		200
 | 
			
		||||
#define __NR_geteuid32		201
 | 
			
		||||
#define __NR_getegid32		202
 | 
			
		||||
#define __NR_setreuid32		203
 | 
			
		||||
#define __NR_setregid32		204
 | 
			
		||||
#define __NR_getgroups32	205
 | 
			
		||||
#define __NR_setgroups32	206
 | 
			
		||||
#define __NR_fchown32		207
 | 
			
		||||
#define __NR_setresuid32	208
 | 
			
		||||
#define __NR_getresuid32	209
 | 
			
		||||
#define __NR_setresgid32	210
 | 
			
		||||
#define __NR_getresgid32	211
 | 
			
		||||
#define __NR_chown32		212
 | 
			
		||||
#define __NR_setuid32		213
 | 
			
		||||
#define __NR_setgid32		214
 | 
			
		||||
#define __NR_setfsuid32		215
 | 
			
		||||
#define __NR_setfsgid32		216
 | 
			
		||||
#define __NR_fcntl64		221
 | 
			
		||||
#define __NR_sendfile64		223
 | 
			
		||||
#define __NR_fadvise64_64	264
 | 
			
		||||
#define __NR_fstatat64		293
 | 
			
		||||
 | 
			
		||||
#else
 | 
			
		||||
 | 
			
		||||
#define __NR_select		142
 | 
			
		||||
#define __NR_getrlimit		191	/* SuS compliant getrlimit */
 | 
			
		||||
#define __NR_lchown  		198
 | 
			
		||||
#define __NR_getuid  		199
 | 
			
		||||
#define __NR_getgid  		200
 | 
			
		||||
#define __NR_geteuid  		201
 | 
			
		||||
#define __NR_getegid  		202
 | 
			
		||||
#define __NR_setreuid  		203
 | 
			
		||||
#define __NR_setregid  		204
 | 
			
		||||
#define __NR_getgroups  	205
 | 
			
		||||
#define __NR_setgroups  	206
 | 
			
		||||
#define __NR_fchown  		207
 | 
			
		||||
#define __NR_setresuid  	208
 | 
			
		||||
#define __NR_getresuid  	209
 | 
			
		||||
#define __NR_setresgid  	210
 | 
			
		||||
#define __NR_getresgid  	211
 | 
			
		||||
#define __NR_chown  		212
 | 
			
		||||
#define __NR_setuid  		213
 | 
			
		||||
#define __NR_setgid  		214
 | 
			
		||||
#define __NR_setfsuid  		215
 | 
			
		||||
#define __NR_setfsgid  		216
 | 
			
		||||
#define __NR_newfstatat		293
 | 
			
		||||
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#endif /* _UAPI_ASM_S390_UNISTD_H_ */
 | 
			
		||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue