提交 19f87240 编写于 作者: S Szabolcs Nagy 提交者: Rich Felker

update siginfo struct for linux v4.6

x86 protection key faults are reported in the si_pkey field,
added in linux commit cd0ea35ff5511cde299a61c21a95889b4a71464e
上级 7ea37c7a
...@@ -74,6 +74,7 @@ typedef struct sigaltstack stack_t; ...@@ -74,6 +74,7 @@ typedef struct sigaltstack stack_t;
#define SEGV_MAPERR 1 #define SEGV_MAPERR 1
#define SEGV_ACCERR 2 #define SEGV_ACCERR 2
#define SEGV_BNDERR 3 #define SEGV_BNDERR 3
#define SEGV_PKUERR 4
#define BUS_ADRALN 1 #define BUS_ADRALN 1
#define BUS_ADRERR 2 #define BUS_ADRERR 2
...@@ -123,10 +124,13 @@ typedef struct { ...@@ -123,10 +124,13 @@ typedef struct {
struct { struct {
void *si_addr; void *si_addr;
short si_addr_lsb; short si_addr_lsb;
struct { union {
void *si_lower; struct {
void *si_upper; void *si_lower;
} __addr_bnd; void *si_upper;
} __addr_bnd;
unsigned si_pkey;
} __first;
} __sigfault; } __sigfault;
struct { struct {
long si_band; long si_band;
...@@ -147,8 +151,9 @@ typedef struct { ...@@ -147,8 +151,9 @@ typedef struct {
#define si_value __si_fields.__si_common.__second.si_value #define si_value __si_fields.__si_common.__second.si_value
#define si_addr __si_fields.__sigfault.si_addr #define si_addr __si_fields.__sigfault.si_addr
#define si_addr_lsb __si_fields.__sigfault.si_addr_lsb #define si_addr_lsb __si_fields.__sigfault.si_addr_lsb
#define si_lower __si_fields.__sigfault.__addr_bnd.si_lower #define si_lower __si_fields.__sigfault.__first.__addr_bnd.si_lower
#define si_upper __si_fields.__sigfault.__addr_bnd.si_upper #define si_upper __si_fields.__sigfault.__first.__addr_bnd.si_upper
#define si_pkey __si_fields.__sigfault.__first.si_pkey
#define si_band __si_fields.__sigpoll.si_band #define si_band __si_fields.__sigpoll.si_band
#define si_fd __si_fields.__sigpoll.si_fd #define si_fd __si_fields.__sigpoll.si_fd
#define si_timerid __si_fields.__si_common.__first.__timer.si_timerid #define si_timerid __si_fields.__si_common.__first.__timer.si_timerid
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册