diff options
author | Mukesh Ojha <mukesh02@linux.vnet.ibm.com> | 2016-09-07 15:51:16 +0530 |
---|---|---|
committer | Stewart Smith <stewart@linux.vnet.ibm.com> | 2016-10-25 20:12:06 +1100 |
commit | 6e1a11461d112ef0c7dbde0166a27b57fe17a115 (patch) | |
tree | ef2517e424a203e136a20a4498061748885f3021 /hw/fsp | |
parent | a125d242fa2e4b614ce4ac1085fb17ab075b180f (diff) | |
download | skiboot-6e1a11461d112ef0c7dbde0166a27b57fe17a115.zip skiboot-6e1a11461d112ef0c7dbde0166a27b57fe17a115.tar.gz skiboot-6e1a11461d112ef0c7dbde0166a27b57fe17a115.tar.bz2 |
errorlog: Remove the elog enable check from 'fsp_elog_check_and_fetch_head'
We use 'elog_enabled' flag to check whether host OS is ready to receive
error log or not. This is nothing to do with reading error log from
service processor.
This patch is to remove the check and keep this 'elog_enabled' free from
FSP specific code and move it into core/errorlog.c in later upcoming patches.
With this changes, in some corner cases we may endup reading same error
log twice from FSP. It happens as we call 'elog_reject_head' inside
'fsp_opal_resend_pending_logs' which makes the state either
'ELOG_STATE_REJECTED' or 'ELOG_STATE_NONE'. So, a call to
'fsp_elog_check_and_fetch_head' routine ends up reading the error
log from FSP which was already read. This case happens twice in a reboot
as whenever 'fsp_opal_resend_pending_logs' gets called.
So, we can ignore it.
Signed-off-by: Mukesh Ojha <mukesh02@linux.vnet.ibm.com>
Reviewed-by: Vasant Hegde <hegdevasant@linux.vnet.ibm.com>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
Diffstat (limited to 'hw/fsp')
-rw-r--r-- | hw/fsp/fsp-elog-read.c | 3 |
1 files changed, 0 insertions, 3 deletions
diff --git a/hw/fsp/fsp-elog-read.c b/hw/fsp/fsp-elog-read.c index 351b3bd..ec5316e 100644 --- a/hw/fsp/fsp-elog-read.c +++ b/hw/fsp/fsp-elog-read.c @@ -127,9 +127,6 @@ static int64_t fsp_send_elog_ack(uint32_t log_id) /* Retrieve error log from FSP with TCE for the data transfer. */ static void fsp_elog_check_and_fetch_head(void) { - if (!elog_enabled) - return; - lock(&elog_read_lock); if (elog_read_from_fsp_head_state != ELOG_STATE_NONE || list_empty(&elog_read_pending)) { |