[Crash-utility] [PATCH 4/5] Parse stack by inactive_stack_frame priorily if the struct is valid

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Signed-off-by: Tao Liu <ltao@xxxxxxxxxx>
---
 x86_64.c | 22 +++++++++++-----------
 1 file changed, 11 insertions(+), 11 deletions(-)

diff --git a/x86_64.c b/x86_64.c
index 564d0df..41e67c6 100644
--- a/x86_64.c
+++ b/x86_64.c
@@ -6497,6 +6497,17 @@ x86_64_ORC_init(void)
 	};
 	struct ORC_data *orc;
 
+	MEMBER_OFFSET_INIT(inactive_task_frame_bp, "inactive_task_frame", "bp");
+	MEMBER_OFFSET_INIT(inactive_task_frame_ret_addr, "inactive_task_frame", "ret_addr");
+	MEMBER_OFFSET_INIT(inactive_task_frame_r15, "inactive_task_frame", "r15");
+	MEMBER_OFFSET_INIT(inactive_task_frame_r14, "inactive_task_frame", "r14");
+	MEMBER_OFFSET_INIT(inactive_task_frame_r13, "inactive_task_frame", "r13");
+	MEMBER_OFFSET_INIT(inactive_task_frame_r12, "inactive_task_frame", "r12");
+	MEMBER_OFFSET_INIT(inactive_task_frame_flags, "inactive_task_frame", "flags");
+	MEMBER_OFFSET_INIT(inactive_task_frame_si, "inactive_task_frame", "si");
+	MEMBER_OFFSET_INIT(inactive_task_frame_di, "inactive_task_frame", "di");
+	MEMBER_OFFSET_INIT(inactive_task_frame_bx, "inactive_task_frame", "bx");
+
 	if (machdep->flags & FRAMEPOINTER)
 		return;
 
@@ -6554,17 +6565,6 @@ x86_64_ORC_init(void)
 	orc->__stop_orc_unwind = symbol_value("__stop_orc_unwind");
 	orc->orc_lookup = symbol_value("orc_lookup");
 
-	MEMBER_OFFSET_INIT(inactive_task_frame_bp, "inactive_task_frame", "bp");
-	MEMBER_OFFSET_INIT(inactive_task_frame_ret_addr, "inactive_task_frame", "ret_addr");
-	MEMBER_OFFSET_INIT(inactive_task_frame_r15, "inactive_task_frame", "r15");
-	MEMBER_OFFSET_INIT(inactive_task_frame_r14, "inactive_task_frame", "r14");
-	MEMBER_OFFSET_INIT(inactive_task_frame_r13, "inactive_task_frame", "r13");
-	MEMBER_OFFSET_INIT(inactive_task_frame_r12, "inactive_task_frame", "r12");
-	MEMBER_OFFSET_INIT(inactive_task_frame_flags, "inactive_task_frame", "flags");
-	MEMBER_OFFSET_INIT(inactive_task_frame_si, "inactive_task_frame", "si");
-	MEMBER_OFFSET_INIT(inactive_task_frame_di, "inactive_task_frame", "di");
-	MEMBER_OFFSET_INIT(inactive_task_frame_bx, "inactive_task_frame", "bx");
-
 	orc->has_signal = MEMBER_EXISTS("orc_entry", "signal");	/* added at 6.3 */
 	orc->has_end = MEMBER_EXISTS("orc_entry", "end");	/* removed at 6.4 */
 
-- 
2.40.1
--
Crash-utility mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxxxxxx
https://${domain_name}/admin/lists/devel.lists.crash-utility.osci.io/
Contribution Guidelines: https://github.com/crash-utility/crash/wiki




[Index of Archives]     [Fedora Development]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite News]     [KDE Users]     [Fedora Tools]

 

Powered by Linux