mirror of
git://git.musl-libc.org/musl
synced 2024-12-15 19:25:55 +00:00
7e10f209fb
ssi_ptr is really 64-bit in kernel, so fix that. assuming sizeof(void*) for it also caused incorrect padding for 32-bits, as the following 64-bits are aligned to 64-bits (and the padding was not taken into account), so fix the padding as well. add addr_lsb field while there.
46 lines
751 B
C
46 lines
751 B
C
#ifndef _SYS_SIGNALFD_H
|
|
#define _SYS_SIGNALFD_H
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
#include <stdint.h>
|
|
#include <fcntl.h>
|
|
|
|
#define __NEED_sigset_t
|
|
|
|
#include <bits/alltypes.h>
|
|
|
|
#define SFD_CLOEXEC O_CLOEXEC
|
|
#define SFD_NONBLOCK O_NONBLOCK
|
|
|
|
int signalfd(int, const sigset_t *, int);
|
|
|
|
struct signalfd_siginfo {
|
|
uint32_t ssi_signo;
|
|
int32_t ssi_errno;
|
|
int32_t ssi_code;
|
|
uint32_t ssi_pid;
|
|
uint32_t ssi_uid;
|
|
int32_t ssi_fd;
|
|
uint32_t ssi_tid;
|
|
uint32_t ssi_band;
|
|
uint32_t ssi_overrun;
|
|
uint32_t ssi_trapno;
|
|
int32_t ssi_status;
|
|
int32_t ssi_int;
|
|
uint64_t ssi_ptr;
|
|
uint64_t ssi_utime;
|
|
uint64_t ssi_stime;
|
|
uint64_t ssi_addr;
|
|
uint16_t ssi_addr_lsb;
|
|
uint8_t pad[128-12*4-4*8-2];
|
|
};
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif
|