twx-linux/include/uapi/linux
Martin Schwidefsky 916cda1aa1 s390: add a system call for guarded storage
This adds a new system call to enable the use of guarded storage for
user space processes. The system call takes two arguments, a command
and pointer to a guarded storage control block:

    s390_guarded_storage(int command, struct gs_cb *gs_cb);

The second argument is relevant only for the GS_SET_BC_CB command.

The commands in detail:

0 - GS_ENABLE
    Enable the guarded storage facility for the current task. The
    initial content of the guarded storage control block will be
    all zeros. After the enablement the user space code can use
    load-guarded-storage-controls instruction (LGSC) to load an
    arbitrary control block. While a task is enabled the kernel
    will save and restore the current content of the guarded
    storage registers on context switch.
1 - GS_DISABLE
    Disables the use of the guarded storage facility for the current
    task. The kernel will cease to save and restore the content of
    the guarded storage registers, the task specific content of
    these registers is lost.
2 - GS_SET_BC_CB
    Set a broadcast guarded storage control block. This is called
    per thread and stores a specific guarded storage control block
    in the task struct of the current task. This control block will
    be used for the broadcast event GS_BROADCAST.
3 - GS_CLEAR_BC_CB
    Clears the broadcast guarded storage control block. The guarded-
    storage control block is removed from the task struct that was
    established by GS_SET_BC_CB.
4 - GS_BROADCAST
    Sends a broadcast to all thread siblings of the current task.
    Every sibling that has established a broadcast guarded storage
    control block will load this control block and will be enabled
    for guarded storage. The broadcast guarded storage control block
    is used up, a second broadcast without a refresh of the stored
    control block with GS_SET_BC_CB will not have any effect.

Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2017-03-22 08:14:25 +01:00
..
android binder: Add support for file-descriptor arrays 2017-02-10 16:00:01 +01:00
byteorder
caif
can can: dev: add CAN interface API for fixed bitrates 2017-01-24 13:52:00 +01:00
cifs
dvb
genwqe
hdlc
hsi
iio iio: Add channel for Gravity 2017-01-05 13:02:25 +00:00
isdn
mmc mmc: block: Change MMC_IOC_MAX_BYTES 2016-11-29 09:00:30 +01:00
netfilter uapi: fix linux/netfilter/xt_hashlimit.h userspace compilation error 2017-02-25 13:32:04 +01:00
netfilter_arp
netfilter_bridge
netfilter_ipv4
netfilter_ipv6
nfsd nfsd: opt in to labeled nfs per export 2017-01-31 12:31:54 -05:00
raid md/failfast: add failfast flag for md to be used by some personalities. 2016-11-22 08:58:17 -08:00
sched sched/headers: Move various ABI definitions to <uapi/linux/sched/types.h> 2017-03-02 08:42:42 +01:00
spi
sunrpc
tc_act net/act_pedit: Introduce 'add' operation 2017-02-10 13:18:33 -05:00
tc_ematch
usb usb: gadget: f_fs: Document eventfd effect on descriptor format. 2017-01-02 10:55:28 +02:00
wimax
a.out.h
acct.h
adb.h
adfs_fs.h
affs_hardblocks.h
agpgart.h
aio_abi.h
am437x-vpfe.h
apm_bios.h
arcfb.h
atalk.h
atm_eni.h
atm_he.h
atm_idt77105.h
atm_nicstar.h
atm_tcp.h
atm_zatm.h Revert "include/uapi/linux/atm_zatm.h: include linux/time.h" 2016-11-13 12:35:13 -05:00
atm.h
atmapi.h
atmarp.h
atmbr2684.h
atmclip.h
atmdev.h
atmioc.h
atmlec.h
atmmpc.h
atmppp.h
atmsap.h
atmsvc.h
audit.h Merge branch 'stable-4.11' of git://git.infradead.org/users/pcmoore/audit 2017-02-21 13:25:50 -08:00
auto_dev-ioctl.h autofs: remove duplicated AUTOFS_DEV_IOCTL_SIZE definition 2017-02-27 18:43:45 -08:00
auto_fs4.h autofs: add command enum/macros for root-dir ioctls 2017-02-27 18:43:45 -08:00
auto_fs.h autofs: add command enum/macros for root-dir ioctls 2017-02-27 18:43:45 -08:00
auxvec.h
ax25.h
b1lli.h
batman_adv.h batman-adv: update copyright years for 2017 2017-01-26 08:34:19 +01:00
baycom.h
bcache.h
bcm933xx_hcs.h
bfs_fs.h
binfmts.h
blkpg.h
blktrace_api.h
blkzoned.h blk-zoned: implement ioctls 2016-10-18 10:05:42 -06:00
bpf_common.h
bpf_perf_event.h
bpf.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2017-02-16 19:34:01 -05:00
bpqether.h net: bpqether.h: remove if_ether.h guard 2016-11-13 00:57:53 -05:00
bsg.h
bt-bmc.h ipmi: add an Aspeed BT IPMI BMC driver 2016-09-29 19:05:06 -05:00
btrfs_tree.h
btrfs.h Btrfs: catch invalid free space trees 2016-10-03 18:52:14 +02:00
can.h can: raw: raw_setsockopt: limit number of can_filter that can be set 2016-12-07 10:45:57 +01:00
capability.h
capi.h
cciss_defs.h
cciss_ioctl.h
cdrom.h
cec-funcs.h [media] cec: fix report_current_latency 2016-12-21 06:59:13 -02:00
cec.h [media] cec.h/cec-funcs.h: don't use bool in public headers 2016-11-16 15:43:10 -02:00
cgroupstats.h
chio.h
cm4000_cs.h
cn_proc.h
coda_psdev.h
coda.h
coff.h
connector.h
const.h
coresight-stm.h
cramfs_fs.h
cryptouser.h crypto: acomp - add asynchronous compression api 2016-10-25 11:08:30 +08:00
cuda.h
cyclades.h
cycx_cfm.h
dcbnl.h
dccp.h
devlink.h devlink: fix the name of eswitch commands 2017-02-10 14:43:00 -05:00
dlm_device.h
dlm_netlink.h
dlm_plock.h
dlm.h
dlmconstants.h
dm-ioctl.h
dm-log-userspace.h uapi dm-log-userspace.h: use __u32, __s32, __u64 and __s64 from linux/types.h 2016-11-21 09:52:02 -05:00
dma-buf.h
dn.h
dqblk_xfs.h
edd.h
efs_fs_sb.h
elf-em.h
elf-fdpic.h
elf.h s390: add a system call for guarded storage 2017-03-22 08:14:25 +01:00
elfcore.h
errno.h
errqueue.h
ethtool.h net: ethtool: add support for 2500BaseT and 5000BaseT link modes 2017-01-30 10:14:28 -05:00
eventpoll.h
fadvise.h
falloc.h vfs: add a FALLOC_FL_UNSHARE mode to fallocate to unshare a range of blocks 2016-10-03 09:11:14 -07:00
fanotify.h
fb.h
fcntl.h statx: Add a system call to make enhanced file info available 2017-03-02 20:51:15 -05:00
fd.h
fdreg.h
fib_rules.h net: core: add UID to flows, rules, and routes 2016-11-04 14:45:23 -04:00
fiemap.h
filter.h
firewire-cdev.h
firewire-constants.h
flat.h
fou.h
fs.h fs: Better permission checking for submounts 2017-02-02 04:36:12 +13:00
fsl_hypervisor.h
fuse.h fuse: Add posix ACL support 2016-10-01 07:32:32 +02:00
futex.h
gameport.h
gen_stats.h
genetlink.h genetlink: use idr to track families 2016-10-27 16:16:09 -04:00
gfs2_ondisk.h
gigaset_dev.h
gpio.h
gsmmux.h
gtp.h
hash_info.h
hdlc.h
hdlcdrv.h
hdreg.h
hid.h
hiddev.h
hidraw.h
hpet.h
hsr_netlink.h
hw_breakpoint.h hw_breakpoint: Allow watchpoint of length 3,5,6 and 7 2016-11-18 17:23:17 +00:00
hyperv.h
hysdn_if.h
i2c-dev.h
i2c.h
i2o-dev.h
i8k.h
icmp.h
icmpv6.h
if_addr.h
if_addrlabel.h
if_alg.h
if_arcnet.h
if_arp.h
if_bonding.h
if_bridge.h bridge: uapi: add per vlan tunnel info 2017-02-03 15:21:21 -05:00
if_cablemodem.h
if_eql.h
if_ether.h RDMA: Adding ethertype ETH_P_IBOE 2017-01-10 14:05:11 -05:00
if_fc.h
if_fddi.h
if_frad.h
if_hippi.h
if_infiniband.h
if_link.h bridge: uapi: add per vlan tunnel info 2017-02-03 15:21:21 -05:00
if_ltalk.h
if_macsec.h
if_packet.h
if_phonet.h
if_plip.h
if_ppp.h
if_pppol2tp.h net: l2tp: deprecate PPPOL2TP_MSG_* in favour of L2TP_MSG_* 2016-12-10 23:29:11 -05:00
if_pppox.h
if_slip.h
if_team.h
if_tun.h
if_tunnel.h Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2016-09-25 23:34:19 +02:00
if_vlan.h
if_x25.h
if.h uapi: fix linux/if.h userspace compilation errors 2017-02-22 16:09:04 -05:00
ife.h net: Introduce ife encapsulation module 2017-02-03 15:16:45 -05:00
igmp.h bridge: sparse fixes in br_ip6_multicast_alloc_query() 2017-01-17 15:22:05 -05:00
ila.h
in6.h ipv6: add IPV6_RECVFRAGSIZE cmsg 2016-11-03 15:41:11 -04:00
in_route.h
in.h ipv4: add IP_RECVFRAGSIZE cmsg 2016-11-03 15:41:11 -04:00
inet_diag.h net: ip, diag -- Add diag interface for raw sockets 2016-10-23 19:35:24 -04:00
inotify.h
input-event-codes.h Input: change KEY_DATA from 0x275 to 0x277 2016-11-30 08:59:26 -08:00
input.h
ioctl.h
ip6_tunnel.h uapi: fix linux/ip6_tunnel.h userspace compilation errors 2017-02-23 10:46:07 -05:00
ip_vs.h
ip.h
ipc.h
ipmi_msgdefs.h
ipmi.h
ipsec.h
ipv6_route.h uapi: fix linux/ipv6_route.h userspace compilation errors 2017-02-19 18:15:12 -05:00
ipv6.h net/ipv6: allow sysctl to change link-local address generation mode 2017-01-27 10:25:34 -05:00
ipx.h
irda.h
irqnr.h
isdn_divertif.h
isdn_ppp.h
isdn.h
isdnif.h
iso_fs.h
ivtv.h
ivtvfb.h
ixjuser.h
jffs2.h
joystick.h
Kbuild virtio, vhost: optimizations, fixes 2017-03-02 13:53:13 -08:00
kcm.h
kcmp.h
kcov.h
kd.h
kdev_t.h
kernel-page-flags.h
kernel.h
kernelcapi.h
kexec.h
keyboard.h
keyctl.h
kfd_ioctl.h
kvm_para.h KVM: x86: add KVM_HC_CLOCK_PAIRING hypercall 2017-02-07 18:16:45 +01:00
kvm.h KVM: race-free exit from KVM_RUN without POSIX signals 2017-02-17 12:27:37 +01:00
l2tp.h uapi: fix linux/if_pppol2tp.h userspace compilation errors 2017-02-14 22:18:05 -05:00
libc-compat.h
lightnvm.h lightnvm: add ioctls for vector I/Os 2017-01-31 08:32:13 -07:00
limits.h
lirc.h
llc.h uapi: fix linux/llc.h userspace compilation error 2017-02-23 10:46:08 -05:00
loop.h
lp.h
lwtunnel.h bpf: BPF for lightweight tunnel infrastructure 2016-12-02 10:51:49 -05:00
magic.h x86/intel_rdt: Add basic resctrl filesystem support 2016-10-30 19:10:14 -06:00
major.h docs: fix locations of several documents that got moved 2016-10-24 08:12:35 -02:00
map_to_7segment.h
matroxfb.h
mdio.h
media-bus-format.h
media.h
mei.h
membarrier.h
memfd.h
mempolicy.h
meye.h
mic_common.h
mic_ioctl.h
mii.h
minix_fs.h
mman.h
mmtimer.h
module.h
mpls_iptunnel.h
mpls.h mpls: Packet stats 2017-01-17 14:38:43 -05:00
mqueue.h uapi: mqueue.h: add missing linux/types.h include 2017-02-24 17:46:56 -08:00
mroute6.h uapi: fix linux/mroute6.h userspace compilation errors 2017-02-19 18:15:12 -05:00
mroute.h uapi: fix linux/mroute.h userspace compilation errors 2017-02-19 18:15:12 -05:00
msdos_fs.h
msg.h
mtio.h
n_r3964.h
nbd.h nbd: move multi-connection bit to unused value 2016-11-22 13:11:55 -07:00
ncp_fs.h
ncp_mount.h
ncp_no.h
ncp.h
ndctl.h
neighbour.h vxlan: support fdb and learning in COLLECT_METADATA mode 2017-02-03 15:21:21 -05:00
net_dropmon.h
net_namespace.h
net_tstamp.h tcp: SOF_TIMESTAMPING_OPT_STATS option for SO_TIMESTAMPING 2016-11-30 10:04:25 -05:00
net.h
netconf.h net: mpls: Add support for netconf 2017-02-20 11:13:37 -05:00
netdevice.h
netfilter_arp.h
netfilter_bridge.h
netfilter_decnet.h
netfilter_ipv4.h
netfilter_ipv6.h
netfilter.h uapi: stop including linux/sysctl.h in uapi/linux/netfilter.h 2017-02-23 21:51:39 +01:00
netlink_diag.h
netlink.h smc: netlink interface for SMC sockets 2017-01-09 16:07:41 -05:00
netrom.h
nfc.h
nfs2.h
nfs3.h
nfs4_mount.h
nfs4.h nfs: add a new NFS4_OPEN_RESULT_MAY_NOTIFY_LOCK constant 2016-09-26 15:20:37 -04:00
nfs_fs.h
nfs_idmap.h
nfs_mount.h
nfs.h
nfsacl.h
nilfs2_api.h
nilfs2_ondisk.h
nl80211.h cfg80211: fix NAN bands definition 2017-02-09 15:17:30 +01:00
nsfs.h nsfs: Add an ioctl() to return owner UID of a userns 2017-02-03 14:35:43 +13:00
nubus.h
nvme_ioctl.h
nvram.h
omap3isp.h
omapfb.h
oom.h
openvswitch.h openvswitch: Add force commit. 2017-02-09 22:59:34 -05:00
packet_diag.h uapi: fix linux/packet_diag.h userspace compilation error 2017-03-09 13:22:28 -08:00
param.h
parport.h
patchkey.h
pci_regs.h Merge branch 'pci/dpc' into next 2017-02-15 11:56:07 -06:00
pci.h
perf_event.h
personality.h
pfkeyv2.h
pg.h
phantom.h
phonet.h
pkt_cls.h net/sched: Reflect HW offload status 2017-02-17 12:08:05 -05:00
pkt_sched.h
pktcdvd.h
pmu.h
poll.h
posix_acl_xattr.h posix_acl: uapi header split 2016-09-27 21:52:00 -04:00
posix_acl.h posix_acl: uapi header split 2016-09-27 21:52:00 -04:00
posix_types.h
ppdev.h
ppp_defs.h
ppp-comp.h
ppp-ioctl.h
pps.h
pr.h
prctl.h
psample.h net: Introduce psample, a new genetlink channel for packet sampling 2017-01-24 13:44:28 -05:00
psci.h
ptp_clock.h
ptrace.h
qnx4_fs.h
qnxtypes.h
qrtr.h
quota.h
radeonfb.h
random.h
raw.h
rds.h uapi: fix linux/rds.h userspace compilation errors 2017-02-23 10:55:08 -05:00
reboot.h
reiserfs_fs.h
reiserfs_xattr.h
resource.h
rfkill.h
rio_cm_cdev.h
rio_mport_cdev.h
romfs_fs.h
rose.h
route.h
rpmsg.h rpmsg: Driver for user space endpoint interface 2017-01-18 10:43:15 -08:00
rtc.h
rtnetlink.h net: mpls: Add support for netconf 2017-02-20 11:13:37 -05:00
scc.h
sched.h
scif_ioctl.h
screen_info.h
sctp.h sctp: add support for generating stream ssn reset event notification 2017-02-19 18:17:59 -05:00
sdla.h
seccomp.h
securebits.h
sed-opal.h uapi: sed-opal fix IOW for activate lsp to use correct struct 2017-02-14 19:47:16 -07:00
seg6_genl.h ipv6: sr: add code base for control plane support of SR-IPv6 2016-11-09 20:40:06 -05:00
seg6_hmac.h ipv6: sr: add missing Kbuild export for header files 2017-01-16 14:47:21 -05:00
seg6_iptunnel.h uapi: fix linux/seg6.h and linux/seg6_iptunnel.h userspace compilation errors 2017-02-23 10:55:08 -05:00
seg6.h uapi: fix linux/seg6.h and linux/seg6_iptunnel.h userspace compilation errors 2017-02-23 10:55:08 -05:00
selinux_netlink.h
sem.h
serial_core.h serial: 8250: Add new port type for TI DA8xx/66AK2x 2017-01-12 11:51:25 +01:00
serial_reg.h serial: exar: Move register defines from uapi header to consumer site 2017-02-10 15:13:26 +01:00
serial.h
serio.h Input: psmouse - add a custom serio protocol to send extra information 2017-02-09 11:43:15 -08:00
shm.h
signal.h
signalfd.h
smc_diag.h smc: netlink interface for SMC sockets 2017-01-09 16:07:41 -05:00
smc.h smc: establish pnet table management 2017-01-09 16:07:38 -05:00
smiapp.h
snmp.h net: add LINUX_MIB_PFMEMALLOCDROP counter 2017-02-02 23:34:19 -05:00
sock_diag.h
socket.h
sockios.h driver: tun: Use new macro SOCK_IOC_TYPE instead of literal number 0x89 2016-10-31 10:56:47 -04:00
sonet.h
sonypi.h
sound.h
soundcard.h
stat.h statx: Add a system call to make enhanced file info available 2017-03-02 20:51:15 -05:00
stddef.h
stm.h
string.h
suspend_ioctls.h
swab.h
sync_file.h
synclink.h
sysctl.h
sysinfo.h
target_core_user.h uapi: fix linux/target_core_user.h userspace compilation errors 2017-02-18 21:44:59 -08:00
taskstats.h
tcp_metrics.h
tcp.h tcp: record pkts sent and retransmistted 2017-01-29 19:17:23 -05:00
telephony.h
termios.h
thermal.h
time.h
timerfd.h timerfd: export defines to userspace 2017-01-10 18:31:55 -08:00
times.h
timex.h
tiocl.h
tipc_config.h
tipc_netlink.h
tipc.h tipc: make replicast a user selectable option 2017-01-20 12:10:17 -05:00
toshiba.h
tty_flags.h
tty.h
types.h linux/types.h: enable endian checks for all sparse builds 2016-12-16 00:13:39 +02:00
udf_fs_i.h
udp.h
uhid.h
uinput.h
uio.h
uleds.h leds: Introduce userspace LED class driver 2016-11-22 12:07:02 +01:00
ultrasound.h
un.h unix: add ioctl to open a unix socket file with O_PATH 2017-02-02 21:58:02 -05:00
unistd.h
unix_diag.h
usbdevice_fs.h
usbip.h
userfaultfd.h userfaultfd: non-cooperative: rollback userfaultfd_exit 2017-03-09 17:01:09 -08:00
userio.h
utime.h
utsname.h
uuid.h
uvcvideo.h
v4l2-common.h
v4l2-controls.h [media] v4l: ctrls: Add deinterlacing mode control 2016-11-16 16:16:08 -02:00
v4l2-dv-timings.h [media] v4l2-dv-timings: add VICs and picture aspect ratio 2016-11-16 15:13:18 -02:00
v4l2-mediabus.h
v4l2-subdev.h
veth.h
vfio.h vfio: Define device_api strings 2016-11-17 08:33:20 -07:00
vhost.h vhost: remove unused feature bit 2016-12-16 00:13:38 +02:00
videodev2.h [media] videodev2.h: go back to limited range Y'CbCr for SRGB and, ADOBERGB 2017-02-13 14:33:56 -02:00
virtio_9p.h
virtio_balloon.h
virtio_blk.h
virtio_config.h
virtio_console.h
virtio_crypto.h crypto: add virtio-crypto driver 2016-12-16 00:13:32 +02:00
virtio_gpu.h
virtio_ids.h crypto: add virtio-crypto driver 2016-12-16 00:13:32 +02:00
virtio_input.h
virtio_mmio.h virtio_mmio: expose header to userspace 2017-02-27 16:31:23 +02:00
virtio_net.h
virtio_pci.h virtio_pci: don't duplicate the msix_enable flag in struct pci_dev 2017-02-27 20:54:03 +02:00
virtio_ring.h
virtio_rng.h
virtio_scsi.h
virtio_types.h linux: drop __bitwise__ everywhere 2016-12-16 00:13:41 +02:00
virtio_vsock.h
vm_sockets.h
vt.h
vtpm_proxy.h tpm, tpm_vtpm_proxy: add kdoc comments for VTPM_PROXY_IOC_NEW_DEV 2016-11-28 01:31:31 +02:00
wait.h
wanrouter.h
watchdog.h
wil6210_uapi.h
wimax.h
wireless.h
x25.h
xattr.h
xfrm.h
xilinx-v4l2-controls.h
zorro_ids.h
zorro.h