58 lines · c
1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */2/*3 * include/linux/signalfd.h4 *5 * Copyright (C) 2007 Davide Libenzi <davidel@xmailserver.org>6 *7 */8 9#ifndef _UAPI_LINUX_SIGNALFD_H10#define _UAPI_LINUX_SIGNALFD_H11 12#include <linux/types.h>13/* For O_CLOEXEC and O_NONBLOCK */14#include <linux/fcntl.h>15 16/* Flags for signalfd4. */17#define SFD_CLOEXEC O_CLOEXEC18#define SFD_NONBLOCK O_NONBLOCK19 20struct signalfd_siginfo {21 __u32 ssi_signo;22 __s32 ssi_errno;23 __s32 ssi_code;24 __u32 ssi_pid;25 __u32 ssi_uid;26 __s32 ssi_fd;27 __u32 ssi_tid;28 __u32 ssi_band;29 __u32 ssi_overrun;30 __u32 ssi_trapno;31 __s32 ssi_status;32 __s32 ssi_int;33 __u64 ssi_ptr;34 __u64 ssi_utime;35 __u64 ssi_stime;36 __u64 ssi_addr;37 __u16 ssi_addr_lsb;38 __u16 __pad2;39 __s32 ssi_syscall;40 __u64 ssi_call_addr;41 __u32 ssi_arch;42 43 /*44 * Pad strcture to 128 bytes. Remember to update the45 * pad size when you add new members. We use a fixed46 * size structure to avoid compatibility problems with47 * future versions, and we leave extra space for additional48 * members. We use fixed size members because this strcture49 * comes out of a read(2) and we really don't want to have50 * a compat on read(2).51 */52 __u8 __pad[28];53};54 55 56 57#endif /* _UAPI_LINUX_SIGNALFD_H */58