From 6b2fda5424fb9aaeabe5056fc1e7286f6c8a034a Mon Sep 17 00:00:00 2001 From: Mark Wielaard Date: Wed, 10 Sep 2008 13:51:30 +0200 Subject: Record module base and use it for adjusting start locations in dwarf unwinder. --- runtime/sym.h | 2 ++ 1 file changed, 2 insertions(+) (limited to 'runtime/sym.h') diff --git a/runtime/sym.h b/runtime/sym.h index b2fb8ee9..564f4eb2 100644 --- a/runtime/sym.h +++ b/runtime/sym.h @@ -34,6 +34,8 @@ struct _stp_module { /* is unloading. */ unsigned long module; /* XXX: why not struct module * ? */ + unsigned long module_base; + /* the stack unwind data for this module */ void *unwind_data; void *unwind_hdr; -- cgit From 675fb1ddeec8cd22e17ab989f8a813a375ae6226 Mon Sep 17 00:00:00 2001 From: Mark Wielaard Date: Wed, 10 Sep 2008 17:43:42 +0200 Subject: Rename _stp_module module_base output to dwarf_module_base and document. --- runtime/sym.h | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'runtime/sym.h') diff --git a/runtime/sym.h b/runtime/sym.h index 564f4eb2..5888d2c7 100644 --- a/runtime/sym.h +++ b/runtime/sym.h @@ -33,8 +33,11 @@ struct _stp_module { /* any notifier hooks that will tell us when a module */ /* is unloading. */ unsigned long module; /* XXX: why not struct module * ? */ - - unsigned long module_base; + + /* This is to undo .debug_frame relocation performed by elfutils, */ + /* which is done during the translate phase when we encode the */ + /* unwind data into the module. See adjustStartLoc() in unwind.c. */ + unsigned long dwarf_module_base; /* the stack unwind data for this module */ void *unwind_data; -- cgit