From 9064e9e01e0115cc3e0fe1891f3adfc06f2dad33 Mon Sep 17 00:00:00 2001 From: zy Date: Mon, 4 Dec 2023 22:49:57 -0500 Subject: [PATCH] remove libunwind --- testcase/userstack.c | 48 ++++++++++++++++++++++---------------------- 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/testcase/userstack.c b/testcase/userstack.c index 591177c..34b74d5 100644 --- a/testcase/userstack.c +++ b/testcase/userstack.c @@ -1,5 +1,5 @@ #include -#include +// #include #include void customFunction1(int n); @@ -7,38 +7,38 @@ void customFunction2(int n); void customFunction3(int n); // Call this function to get a backtrace. -void backtrace() { - unw_cursor_t cursor; - unw_context_t context; +// void backtrace() { +// unw_cursor_t cursor; +// unw_context_t context; - // Initialize cursor to current frame for local unwinding. - unw_getcontext(&context); - unw_init_local(&cursor, &context); +// // Initialize cursor to current frame for local unwinding. +// unw_getcontext(&context); +// unw_init_local(&cursor, &context); - // Unwind frames one by one, going up the frame stack. - while (unw_step(&cursor) > 0) { - unw_word_t offset, pc; - unw_get_reg(&cursor, UNW_REG_IP, &pc); - if (pc == 0) { - break; - } - printf("0x%lx:", pc); +// // Unwind frames one by one, going up the frame stack. +// while (unw_step(&cursor) > 0) { +// unw_word_t offset, pc; +// unw_get_reg(&cursor, UNW_REG_IP, &pc); +// if (pc == 0) { +// break; +// } +// printf("0x%lx:", pc); - char sym[256]; - if (unw_get_proc_name(&cursor, sym, sizeof(sym), &offset) == 0) { - printf(" (%s+0x%lx)\n", sym, offset); - } else { - printf(" -- error: unable to obtain symbol name for this frame\n"); - } - } -} +// char sym[256]; +// if (unw_get_proc_name(&cursor, sym, sizeof(sym), &offset) == 0) { +// printf(" (%s+0x%lx)\n", sym, offset); +// } else { +// printf(" -- error: unable to obtain symbol name for this frame\n"); +// } +// } +// } void customFunction1(int n) { if(n <= 0) { printf("End of recursion\n"); // output backtrace printf("pid: %d\n", getpid()); - backtrace(); + // backtrace(); while (1) { sleep(1); } // never return, keep stack