diff options
author | Andrew Donnellan <andrew.donnellan@au1.ibm.com> | 2019-03-18 15:28:57 +1100 |
---|---|---|
committer | Stewart Smith <stewart@linux.ibm.com> | 2019-03-28 15:24:12 +1100 |
commit | 8dddd751ef43a915dcd1856722139d041ff2db38 (patch) | |
tree | 52cd5cc81692c95ee49f09af30f67397bbbdcf24 | |
parent | 80a49c7022b2241b09270ca8dfd8892e5bdc9803 (diff) | |
download | skiboot-8dddd751ef43a915dcd1856722139d041ff2db38.zip skiboot-8dddd751ef43a915dcd1856722139d041ff2db38.tar.gz skiboot-8dddd751ef43a915dcd1856722139d041ff2db38.tar.bz2 |
hw/fsp, hw/ipmi: Convert attn code to not use backtrace wrappers
We're about to get rid of __backtrace() and __print_backtrace(), convert
the FSP/IPMI attn code to not use them.
Signed-off-by: Andrew Donnellan <andrew.donnellan@au1.ibm.com>
Signed-off-by: Stewart Smith <stewart@linux.ibm.com>
-rw-r--r-- | hw/fsp/fsp-attn.c | 10 | ||||
-rw-r--r-- | hw/ipmi/ipmi-attn.c | 9 |
2 files changed, 10 insertions, 9 deletions
diff --git a/hw/fsp/fsp-attn.c b/hw/fsp/fsp-attn.c index ff702ab..6774dd8 100644 --- a/hw/fsp/fsp-attn.c +++ b/hw/fsp/fsp-attn.c @@ -92,7 +92,8 @@ static void update_sp_attn_area(const char *msg) { #define STACK_BUF_ENTRIES 20 struct bt_entry bt_buf[STACK_BUF_ENTRIES]; - unsigned int ent_cnt, len; + struct bt_metadata metadata; + unsigned int len; if (!fsp_present()) return; @@ -105,11 +106,10 @@ static void update_sp_attn_area(const char *msg) cpu_to_be32((uint32_t)((uint64_t)__builtin_return_address(0) & 0xffffffff)); snprintf(ti_attn->msg.version, VERSION_LEN, "%s", version); - ent_cnt = STACK_BUF_ENTRIES; - __backtrace(bt_buf, &ent_cnt); + ___backtrace(bt_buf, STACK_BUF_ENTRIES, &metadata); + metadata.token = OPAL_LAST + 1; len = BT_FRAME_LEN; - __print_backtrace(mfspr(SPR_PIR), bt_buf, ent_cnt, - ti_attn->msg.bt_buf, &len, false); + ___print_backtrace(bt_buf, &metadata, ti_attn->msg.bt_buf, &len, false); snprintf(ti_attn->msg.file_info, FILE_INFO_LEN, "%s", msg); ti_attn->msg_len = VERSION_LEN + BT_FRAME_LEN + diff --git a/hw/ipmi/ipmi-attn.c b/hw/ipmi/ipmi-attn.c index 8ff872c..8407188 100644 --- a/hw/ipmi/ipmi-attn.c +++ b/hw/ipmi/ipmi-attn.c @@ -38,7 +38,7 @@ static struct bt_entry bt_buf[STACK_BUF_ENTRIES]; /* Log eSEL event with OPAL backtrace */ static void ipmi_log_terminate_event(const char *msg) { - unsigned int bt_entry_cnt = STACK_BUF_ENTRIES; + struct bt_metadata metadata; unsigned int ti_len; unsigned int ti_size; struct errorlog *elog_buf; @@ -53,9 +53,10 @@ static void ipmi_log_terminate_event(const char *msg) ti_size = IPMI_TI_BUFFER_SIZE - ti_len; /* Backtrace */ - __backtrace(bt_buf, &bt_entry_cnt); - __print_backtrace(mfspr(SPR_PIR), bt_buf, bt_entry_cnt, - ti_buffer + ti_len, &ti_size, true); + ___backtrace(bt_buf, STACK_BUF_ENTRIES, &metadata); + metadata.token = OPAL_LAST + 1; + ___print_backtrace(bt_buf, &metadata, ti_buffer + ti_len, &ti_size, + true); /* Create eSEL event and commit */ elog_buf = opal_elog_create(&e_info(OPAL_RC_ATTN), 0); |