linux-headers (unknown)

(root)/
include/
linux/
signalfd.h
       1  /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
       2  /*
       3   *  include/linux/signalfd.h
       4   *
       5   *  Copyright (C) 2007  Davide Libenzi <davidel@xmailserver.org>
       6   *
       7   */
       8  
       9  #ifndef _LINUX_SIGNALFD_H
      10  #define _LINUX_SIGNALFD_H
      11  
      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_CLOEXEC
      18  #define SFD_NONBLOCK O_NONBLOCK
      19  
      20  struct 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 the
      45  	 * pad size when you add new members. We use a fixed
      46  	 * size structure to avoid compatibility problems with
      47  	 * future versions, and we leave extra space for additional
      48  	 * members. We use fixed size members because this strcture
      49  	 * comes out of a read(2) and we really don't want to have
      50  	 * a compat on read(2).
      51  	 */
      52  	__u8 __pad[28];
      53  };
      54  
      55  
      56  
      57  #endif /* _LINUX_SIGNALFD_H */