|
@@ -368,6 +368,11 @@ static int expected_bnd_index = -1;
|
|
|
uint64_t shadow_plb[NR_MPX_BOUNDS_REGISTERS][2]; /* shadow MPX bound registers */
|
|
|
unsigned long shadow_map[NR_MPX_BOUNDS_REGISTERS];
|
|
|
|
|
|
+/* Failed address bound checks: */
|
|
|
+#ifndef SEGV_BNDERR
|
|
|
+# define SEGV_BNDERR 3
|
|
|
+#endif
|
|
|
+
|
|
|
/*
|
|
|
* The kernel is supposed to provide some information about the bounds
|
|
|
* exception in the siginfo. It should match what we have in the bounds
|
|
@@ -419,8 +424,6 @@ void handler(int signum, siginfo_t *si, void *vucontext)
|
|
|
br_count++;
|
|
|
dprintf1("#BR 0x%jx (total seen: %d)\n", status, br_count);
|
|
|
|
|
|
-#define SEGV_BNDERR 3 /* failed address bound checks */
|
|
|
-
|
|
|
dprintf2("Saw a #BR! status 0x%jx at %016lx br_reason: %jx\n",
|
|
|
status, ip, br_reason);
|
|
|
dprintf2("si_signo: %d\n", si->si_signo);
|