1*53ee8cc1Swenshuai.xi /* 2*53ee8cc1Swenshuai.xi * include/linux/signalfd.h 3*53ee8cc1Swenshuai.xi * 4*53ee8cc1Swenshuai.xi * Copyright (C) 2007 Davide Libenzi <davidel@xmailserver.org> 5*53ee8cc1Swenshuai.xi * 6*53ee8cc1Swenshuai.xi */ 7*53ee8cc1Swenshuai.xi 8*53ee8cc1Swenshuai.xi #ifndef _LINUX_SIGNALFD_H 9*53ee8cc1Swenshuai.xi #define _LINUX_SIGNALFD_H 10*53ee8cc1Swenshuai.xi 11*53ee8cc1Swenshuai.xi 12*53ee8cc1Swenshuai.xi struct signalfd_siginfo { 13*53ee8cc1Swenshuai.xi __u32 ssi_signo; 14*53ee8cc1Swenshuai.xi __s32 ssi_errno; 15*53ee8cc1Swenshuai.xi __s32 ssi_code; 16*53ee8cc1Swenshuai.xi __u32 ssi_pid; 17*53ee8cc1Swenshuai.xi __u32 ssi_uid; 18*53ee8cc1Swenshuai.xi __s32 ssi_fd; 19*53ee8cc1Swenshuai.xi __u32 ssi_tid; 20*53ee8cc1Swenshuai.xi __u32 ssi_band; 21*53ee8cc1Swenshuai.xi __u32 ssi_overrun; 22*53ee8cc1Swenshuai.xi __u32 ssi_trapno; 23*53ee8cc1Swenshuai.xi __s32 ssi_status; 24*53ee8cc1Swenshuai.xi __s32 ssi_int; 25*53ee8cc1Swenshuai.xi __u64 ssi_ptr; 26*53ee8cc1Swenshuai.xi __u64 ssi_utime; 27*53ee8cc1Swenshuai.xi __u64 ssi_stime; 28*53ee8cc1Swenshuai.xi __u64 ssi_addr; 29*53ee8cc1Swenshuai.xi 30*53ee8cc1Swenshuai.xi /* 31*53ee8cc1Swenshuai.xi * Pad strcture to 128 bytes. Remember to update the 32*53ee8cc1Swenshuai.xi * pad size when you add new members. We use a fixed 33*53ee8cc1Swenshuai.xi * size structure to avoid compatibility problems with 34*53ee8cc1Swenshuai.xi * future versions, and we leave extra space for additional 35*53ee8cc1Swenshuai.xi * members. We use fixed size members because this strcture 36*53ee8cc1Swenshuai.xi * comes out of a read(2) and we really don't want to have 37*53ee8cc1Swenshuai.xi * a compat on read(2). 38*53ee8cc1Swenshuai.xi */ 39*53ee8cc1Swenshuai.xi __u8 __pad[48]; 40*53ee8cc1Swenshuai.xi }; 41*53ee8cc1Swenshuai.xi 42*53ee8cc1Swenshuai.xi 43*53ee8cc1Swenshuai.xi 44*53ee8cc1Swenshuai.xi #endif /* _LINUX_SIGNALFD_H */ 45*53ee8cc1Swenshuai.xi 46