[DTrace-devel] [PATCH 1/2] Add DTRACEFLT_BADINDEX fault
Kris Van Hees
kris.van.hees at oracle.com
Fri Feb 24 16:45:06 UTC 2023
Signed-off-by: Kris Van Hees <kris.van.hees at oracle.com>
---
include/dtrace/faults_defines.h | 1 +
libdtrace/dt_error.c | 1 +
libdtrace/dt_handle.c | 1 +
3 files changed, 3 insertions(+)
diff --git a/include/dtrace/faults_defines.h b/include/dtrace/faults_defines.h
index 3cefb0ee..4642a43a 100644
--- a/include/dtrace/faults_defines.h
+++ b/include/dtrace/faults_defines.h
@@ -33,6 +33,7 @@
#define DTRACEFLT_TUPOFLOW 8 /* Tuple stack overflow */
#define DTRACEFLT_BADSTACK 9 /* Bad stack */
#define DTRACEFLT_BADSIZE 10 /* Bad size */
+#define DTRACEFLT_BADINDEX 11 /* Index out of bounds */
#define DTRACEFLT_LIBRARY 1000 /* Library-level fault */
diff --git a/libdtrace/dt_error.c b/libdtrace/dt_error.c
index 383e0cde..fecb4f3b 100644
--- a/libdtrace/dt_error.c
+++ b/libdtrace/dt_error.c
@@ -208,6 +208,7 @@ dtrace_faultstr(dtrace_hdl_t *dtp, int fault)
{ DTRACEFLT_TUPOFLOW, "tuple stack overflow" },
{ DTRACEFLT_BADSTACK, "bad stack" },
{ DTRACEFLT_BADSIZE, "invalid size" },
+ { DTRACEFLT_BADINDEX, "index out of bounds" },
{ DTRACEFLT_LIBRARY, "library-level fault" },
{ 0, NULL }
};
diff --git a/libdtrace/dt_handle.c b/libdtrace/dt_handle.c
index e7dda959..14e15134 100644
--- a/libdtrace/dt_handle.c
+++ b/libdtrace/dt_handle.c
@@ -182,6 +182,7 @@ dt_handle_err(dtrace_hdl_t *dtp, dtrace_probedata_t *data)
if ((int64_t)err.dteda_addr == -1)
goto no_addr;
case DTRACEFLT_BADALIGN:
+ case DTRACEFLT_BADINDEX:
case DTRACEFLT_BADSTACK:
case DTRACEFLT_BADSIZE:
sprintf(details, " (0x%llx)", (unsigned long long)err.dteda_addr);
--
2.39.1
More information about the DTrace-devel
mailing list