summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPatrick Williams <iawillia@us.ibm.com>2014-02-17 17:29:55 -0600
committerA. Patrick Williams III <iawillia@us.ibm.com>2014-02-27 11:38:43 -0600
commit941d3e56f1f933dba3f98c3f82fae0561a5201e7 (patch)
treef8f907280d7176c83685739ca03797eb822bbfe9
parent0f33e04d51a9ad3e37fa40db8970f166ff84432e (diff)
downloadblackbird-hostboot-941d3e56f1f933dba3f98c3f82fae0561a5201e7.tar.gz
blackbird-hostboot-941d3e56f1f933dba3f98c3f82fae0561a5201e7.zip
Clean up beam errors in core.
Change-Id: I695a38ae88583a052cae19b930eb53171f8fab2b RTC:94993 Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/9050 Tested-by: Jenkins Server Reviewed-by: Douglas R. Gilbert <dgilbert@us.ibm.com> Reviewed-by: Michael Baiocchi <baiocchi@us.ibm.com> Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
-rw-r--r--src/build/beam/core/assert.C24
-rw-r--r--src/build/beam/core/heapmgr.C23
-rw-r--r--src/build/beam/core/pagemgr.C24
-rw-r--r--src/build/beam/core/ptmgr.C24
-rw-r--r--src/build/beam/core/stacksegment.C23
-rw-r--r--src/build/beam/i2c/i2c.C23
-rw-r--r--src/build/mkrules/beam.env.mk11
-rw-r--r--src/kernel/heapmgr.C2
-rw-r--r--src/kernel/ptmgr.C4
-rw-r--r--src/kernel/stacksegment.C46
-rw-r--r--src/kernel/vmmmgr.C6
-rwxr-xr-xsrc/usr/i2c/i2c.C2
-rw-r--r--src/usr/ibscom/ibscom.C8
-rw-r--r--src/usr/intr/intrrp.C2
-rw-r--r--src/usr/trace/compdesc.C5
-rw-r--r--src/usr/trace/entry.H4
-rw-r--r--src/usr/trace/runtime/rt_service.C4
17 files changed, 192 insertions, 43 deletions
diff --git a/src/build/beam/core/assert.C b/src/build/beam/core/assert.C
new file mode 100644
index 000000000..83cee0318
--- /dev/null
+++ b/src/build/beam/core/assert.C
@@ -0,0 +1,24 @@
+/* IBM_PROLOG_BEGIN_TAG */
+/* This is an automatically generated prolog. */
+/* */
+/* $Source: src/build/beam/core/assert.C $ */
+/* */
+/* IBM CONFIDENTIAL */
+/* */
+/* COPYRIGHT International Business Machines Corp. 2014 */
+/* */
+/* p1 */
+/* */
+/* Object Code Only (OCO) source materials */
+/* Licensed Internal Code Source Materials */
+/* IBM HostBoot Licensed Internal Code */
+/* */
+/* The source code for this program is not published or otherwise */
+/* divested of its trade secrets, irrespective of what has been */
+/* deposited with the U.S. Copyright Office. */
+/* */
+/* Origin: 30 */
+/* */
+/* IBM_PROLOG_END_TAG */
+>>>ERROR5___assert_d9b551657c952063
+>>>ERROR5___assert_941b08c17c952063
diff --git a/src/build/beam/core/heapmgr.C b/src/build/beam/core/heapmgr.C
new file mode 100644
index 000000000..9a9cfb39f
--- /dev/null
+++ b/src/build/beam/core/heapmgr.C
@@ -0,0 +1,23 @@
+/* IBM_PROLOG_BEGIN_TAG */
+/* This is an automatically generated prolog. */
+/* */
+/* $Source: src/build/beam/core/heapmgr.C $ */
+/* */
+/* IBM CONFIDENTIAL */
+/* */
+/* COPYRIGHT International Business Machines Corp. 2014 */
+/* */
+/* p1 */
+/* */
+/* Object Code Only (OCO) source materials */
+/* Licensed Internal Code Source Materials */
+/* IBM HostBoot Licensed Internal Code */
+/* */
+/* The source code for this program is not published or otherwise */
+/* divested of its trade secrets, irrespective of what has been */
+/* deposited with the U.S. Copyright Office. */
+/* */
+/* Origin: 30 */
+/* */
+/* IBM_PROLOG_END_TAG */
+>>>MISTAKE1__coalesce_4286eea91505
diff --git a/src/build/beam/core/pagemgr.C b/src/build/beam/core/pagemgr.C
new file mode 100644
index 000000000..1007dee77
--- /dev/null
+++ b/src/build/beam/core/pagemgr.C
@@ -0,0 +1,24 @@
+/* IBM_PROLOG_BEGIN_TAG */
+/* This is an automatically generated prolog. */
+/* */
+/* $Source: src/build/beam/core/pagemgr.C $ */
+/* */
+/* IBM CONFIDENTIAL */
+/* */
+/* COPYRIGHT International Business Machines Corp. 2014 */
+/* */
+/* p1 */
+/* */
+/* Object Code Only (OCO) source materials */
+/* Licensed Internal Code Source Materials */
+/* IBM HostBoot Licensed Internal Code */
+/* */
+/* The source code for this program is not published or otherwise */
+/* divested of its trade secrets, irrespective of what has been */
+/* deposited with the U.S. Copyright Office. */
+/* */
+/* Origin: 30 */
+/* */
+/* IBM_PROLOG_END_TAG */
+>>>MISTAKE5__initialize_7639026bb95510e7
+>>>MISTAKE5__initialize_2d381016b95510e7
diff --git a/src/build/beam/core/ptmgr.C b/src/build/beam/core/ptmgr.C
new file mode 100644
index 000000000..96c9c64e9
--- /dev/null
+++ b/src/build/beam/core/ptmgr.C
@@ -0,0 +1,24 @@
+/* IBM_PROLOG_BEGIN_TAG */
+/* This is an automatically generated prolog. */
+/* */
+/* $Source: src/build/beam/core/ptmgr.C $ */
+/* */
+/* IBM CONFIDENTIAL */
+/* */
+/* COPYRIGHT International Business Machines Corp. 2014 */
+/* */
+/* p1 */
+/* */
+/* Object Code Only (OCO) source materials */
+/* Licensed Internal Code Source Materials */
+/* IBM HostBoot Licensed Internal Code */
+/* */
+/* The source code for this program is not published or otherwise */
+/* divested of its trade secrets, irrespective of what has been */
+/* deposited with the U.S. Copyright Office. */
+/* */
+/* Origin: 30 */
+/* */
+/* IBM_PROLOG_END_TAG */
+>>>MISTAKE1_getAccessType_902999ce1505
+>>>MISTAKE1_writePTE_70ad5a471505
diff --git a/src/build/beam/core/stacksegment.C b/src/build/beam/core/stacksegment.C
new file mode 100644
index 000000000..04649d98b
--- /dev/null
+++ b/src/build/beam/core/stacksegment.C
@@ -0,0 +1,23 @@
+/* IBM_PROLOG_BEGIN_TAG */
+/* This is an automatically generated prolog. */
+/* */
+/* $Source: src/build/beam/core/stacksegment.C $ */
+/* */
+/* IBM CONFIDENTIAL */
+/* */
+/* COPYRIGHT International Business Machines Corp. 2014 */
+/* */
+/* p1 */
+/* */
+/* Object Code Only (OCO) source materials */
+/* Licensed Internal Code Source Materials */
+/* IBM HostBoot Licensed Internal Code */
+/* */
+/* The source code for this program is not published or otherwise */
+/* divested of its trade secrets, irrespective of what has been */
+/* deposited with the U.S. Copyright Office. */
+/* */
+/* Origin: 30 */
+/* */
+/* IBM_PROLOG_END_TAG */
+>>>ERROR8_~StackSegment_b791f4a2ac177b6
diff --git a/src/build/beam/i2c/i2c.C b/src/build/beam/i2c/i2c.C
new file mode 100644
index 000000000..91e35f18b
--- /dev/null
+++ b/src/build/beam/i2c/i2c.C
@@ -0,0 +1,23 @@
+/* IBM_PROLOG_BEGIN_TAG */
+/* This is an automatically generated prolog. */
+/* */
+/* $Source: src/build/beam/i2c/i2c.C $ */
+/* */
+/* IBM CONFIDENTIAL */
+/* */
+/* COPYRIGHT International Business Machines Corp. 2014 */
+/* */
+/* p1 */
+/* */
+/* Object Code Only (OCO) source materials */
+/* Licensed Internal Code Source Materials */
+/* IBM HostBoot Licensed Internal Code */
+/* */
+/* The source code for this program is not published or otherwise */
+/* divested of its trade secrets, irrespective of what has been */
+/* deposited with the U.S. Copyright Office. */
+/* */
+/* Origin: 30 */
+/* */
+/* IBM_PROLOG_END_TAG */
+>>>MISTAKE17_i2cSetupMasters_8697e17e1505
diff --git a/src/build/mkrules/beam.env.mk b/src/build/mkrules/beam.env.mk
index 71a64cccc..d5888903f 100644
--- a/src/build/mkrules/beam.env.mk
+++ b/src/build/mkrules/beam.env.mk
@@ -5,7 +5,7 @@
#
# IBM CONFIDENTIAL
#
-# COPYRIGHT International Business Machines Corp. 2013
+# COPYRIGHT International Business Machines Corp. 2013,2014
#
# p1
#
@@ -31,8 +31,10 @@ BEAMCMD = $(HOST_PREFIX)jail $(BEAMPATH)/bin/beam_compile
ifdef MODULE
BEAMDIR = $(ROOTPATH)/obj/beam/$(MODULE)
+BEAMMODULE = $(MODULE)
else
BEAMDIR = $(ROOTPATH)/obj/beam/core
+BEAMMODULE = core
endif
## Set BEAM source files.
@@ -43,7 +45,12 @@ BEAMFLAGS += --beam::source=$(ROOTPATH)/src/build/beam/compiler_c_config.tcl
BEAMFLAGS += --beam::source=$(ROOTPATH)/src/build/beam/compiler_cpp_config.tcl
## point to a directory that BEAM can use for its' working files.
-BEAMFLAGS += --beam::data=${BEAMDIR}
+BEAMFLAGS += --beam::data=$(BEAMDIR)
+
+## point BEAM to the potential innocent directory for a module.
+BEAM_INNOCENT = $(ROOTPATH)/src/build/beam/$(BEAMMODULE)
+BEAMFLAGS += $(if $(wildcard $(BEAM_INNOCENT)), \
+ --beam::user_innocent=$(BEAM_INNOCENT))
## tell the "Edison" compiler to generate no warnings.
BEAMFLAGS += --edg=--no_warnings
diff --git a/src/kernel/heapmgr.C b/src/kernel/heapmgr.C
index d09799a72..b9f8d4d37 100644
--- a/src/kernel/heapmgr.C
+++ b/src/kernel/heapmgr.C
@@ -446,7 +446,7 @@ void HeapManager::_coalesce()
chunk = temp;
}
printkd("HeapMgr coalesced total %d\n",cv_coalesce_count);
- test_pages(); /*no effect*/ // BEAM fix.
+ test_pages();
}
void HeapManager::stats()
diff --git a/src/kernel/ptmgr.C b/src/kernel/ptmgr.C
index 6b6436d71..93dd2dc32 100644
--- a/src/kernel/ptmgr.C
+++ b/src/kernel/ptmgr.C
@@ -713,7 +713,7 @@ void PageTableManager::writePTE( PageTableEntry* i_pte,
{
// this should never happen because we should always go
// through the delEntry() path instead
- printPTE( "Stealing", i_dest ); /*no effect*/ // BEAM Fix.
+ printPTE( "Stealing", i_dest );
Eprintk( "**ERROR** PageTableManager::writePTE>"
" Trying to steal a PTE\n" );
kassert(false);
@@ -841,7 +841,7 @@ void PageTableManager::_printPT( void )
{
if( pte->V == 1 )
{
- printPTE( NULL, pte ); /*no effect*/ // BEAM Fix.
+ printPTE( NULL, pte );
}
pte++;
diff --git a/src/kernel/stacksegment.C b/src/kernel/stacksegment.C
index fdc6c7a8f..2d15d8202 100644
--- a/src/kernel/stacksegment.C
+++ b/src/kernel/stacksegment.C
@@ -1,25 +1,25 @@
-// IBM_PROLOG_BEGIN_TAG
-// This is an automatically generated prolog.
-//
-// $Source: src/kernel/stacksegment.C $
-//
-// IBM CONFIDENTIAL
-//
-// COPYRIGHT International Business Machines Corp. 2011
-//
-// p1
-//
-// Object Code Only (OCO) source materials
-// Licensed Internal Code Source Materials
-// IBM HostBoot Licensed Internal Code
-//
-// The source code for this program is not published or other-
-// wise divested of its trade secrets, irrespective of what has
-// been deposited with the U.S. Copyright Office.
-//
-// Origin: 30
-//
-// IBM_PROLOG_END
+/* IBM_PROLOG_BEGIN_TAG */
+/* This is an automatically generated prolog. */
+/* */
+/* $Source: src/kernel/stacksegment.C $ */
+/* */
+/* IBM CONFIDENTIAL */
+/* */
+/* COPYRIGHT International Business Machines Corp. 2011,2014 */
+/* */
+/* p1 */
+/* */
+/* Object Code Only (OCO) source materials */
+/* Licensed Internal Code Source Materials */
+/* IBM HostBoot Licensed Internal Code */
+/* */
+/* The source code for this program is not published or otherwise */
+/* divested of its trade secrets, irrespective of what has been */
+/* deposited with the U.S. Copyright Office. */
+/* */
+/* Origin: 30 */
+/* */
+/* IBM_PROLOG_END_TAG */
#include <assert.h>
#include <util/singleton.H>
@@ -58,7 +58,7 @@ StackSegment::~StackSegment()
delete l_node->block;
delete l_node;
}
- } while (l_node != NULL); /*using deallocated*/ // BEAM invalid error.
+ } while (l_node != NULL);
}
bool StackSegment::handlePageFault(task_t* i_task, uint64_t i_addr,
diff --git a/src/kernel/vmmmgr.C b/src/kernel/vmmmgr.C
index 223f4f4c6..941713f93 100644
--- a/src/kernel/vmmmgr.C
+++ b/src/kernel/vmmmgr.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2010,2013 */
+/* COPYRIGHT International Business Machines Corp. 2010,2014 */
/* */
/* p1 */
/* */
@@ -54,7 +54,7 @@ void VmmManager::init()
SegmentManager::initSLB();
v.initPTEs();
- v.initSDR1(); /*no effect*/ // BEAM Fix.
+ v.initSDR1();
};
@@ -63,7 +63,7 @@ void VmmManager::init_slb()
VmmManager& v = Singleton<VmmManager>::instance();
SegmentManager::initSLB();
- v.initSDR1(); /*no effect*/ // BEAM Fix.
+ v.initSDR1();
}
bool VmmManager::pteMiss(task_t* t, uint64_t effAddr, bool store)
diff --git a/src/usr/i2c/i2c.C b/src/usr/i2c/i2c.C
index 9709026b8..606cb79bd 100755
--- a/src/usr/i2c/i2c.C
+++ b/src/usr/i2c/i2c.C
@@ -1498,7 +1498,7 @@ errlHndl_t i2cSetupMasters ( void )
continue;
}
- for( uint32_t engine = 0; /*loop doesn't iterate*/
+ for( uint32_t engine = 0;
engine < CENTAUR_MASTER_ENGINES;
engine++ )
{
diff --git a/src/usr/ibscom/ibscom.C b/src/usr/ibscom/ibscom.C
index f81656002..71ea19e67 100644
--- a/src/usr/ibscom/ibscom.C
+++ b/src/usr/ibscom/ibscom.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2012,2013 */
+/* COPYRIGHT International Business Machines Corp. 2012,2014 */
/* */
/* p1 */
/* */
@@ -380,7 +380,7 @@ void err_cleanup(Target* i_target,
//23=MBS_FIR_MASK_REG_HOST_INBAND_WRITE_ERROR
mbs_fir &= 0xFFFFFCFFFFFFFFFF;
op_size = sizeof(uint64_t);
- l_err = deviceOp( DeviceFW::WRITE,
+ tmp_err = deviceOp( DeviceFW::WRITE,
i_target,
&mbs_fir,
op_size,
@@ -412,7 +412,7 @@ void err_cleanup(Target* i_target,
l_err->setSev(ERRORLOG::ERRL_SEV_INFORMATIONAL);
errlCommit(l_err,IBSCOM_COMP_ID);
l_err = NULL;
- }
+ }
}
@@ -932,7 +932,7 @@ void enableInbandScoms( bool i_disable )
mutex_unlock(l_mutex);
}
- }
+ }
}
diff --git a/src/usr/intr/intrrp.C b/src/usr/intr/intrrp.C
index 9b2d125ac..1f30832c2 100644
--- a/src/usr/intr/intrrp.C
+++ b/src/usr/intr/intrrp.C
@@ -357,7 +357,7 @@ void IntrRp::msgHandler()
TRACFCOMP(g_trac_intr,
"External Interrupt recieved. XIRR=%x, PIR=%x",
- xirr,pir);
+ xirr,pir.word);
// Acknowlege msg
msg->data[1] = 0;
diff --git a/src/usr/trace/compdesc.C b/src/usr/trace/compdesc.C
index 35f4de0c5..3d8de4ac4 100644
--- a/src/usr/trace/compdesc.C
+++ b/src/usr/trace/compdesc.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2012,2013 */
+/* COPYRIGHT International Business Machines Corp. 2012,2014 */
/* */
/* p1 */
/* */
@@ -95,7 +95,8 @@ namespace TRACE
#ifndef __HOSTBOOT_RUNTIME // TODO: RTC 79408
// Check for special SCAN component to force enable debug trace on.
- if (0 == memcmp(l_compName, "SCAN", 5))
+ if (l_rc && !l_rc->iv_debugEnabled &&
+ (0 == memcmp(l_compName, "SCAN", 5)))
{
TARGETING::Target* sys = NULL;
TARGETING::targetService().getTopLevelTarget(sys);
diff --git a/src/usr/trace/entry.H b/src/usr/trace/entry.H
index 1bd47ce18..8f98468ac 100644
--- a/src/usr/trace/entry.H
+++ b/src/usr/trace/entry.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2012 */
+/* COPYRIGHT International Business Machines Corp. 2012,2014 */
/* */
/* p1 */
/* */
@@ -56,7 +56,7 @@ namespace TRACE
ComponentDesc* comp; //< Component Descriptor for this Entry.
Entry* next; //< Linked-list 'next' ptr.
Entry* prev; //< Linked-list 'prev' ptr.
- uint16_t committed; //< Committed status.
+ volatile uint16_t committed; //< Committed status.
uint16_t size; //< Size of data portion.
char data[0]; //< Start of 'fsp-trace' style structure.
};
diff --git a/src/usr/trace/runtime/rt_service.C b/src/usr/trace/runtime/rt_service.C
index e7eda7280..f5e5da27e 100644
--- a/src/usr/trace/runtime/rt_service.C
+++ b/src/usr/trace/runtime/rt_service.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2013 */
+/* COPYRIGHT International Business Machines Corp. 2013,2014 */
/* */
/* p1 */
/* */
@@ -139,7 +139,7 @@ namespace TRACE
memcpy(bin_output, i_td->iv_compName, compName_len);
size_t output_pos = compName_len +
sprintf(&bin_output[compName_len],
- ":~[0x%04hx]", (int) pos);
+ ":~[0x%04hx]", (uint16_t) pos);
for (int i = 0; i < 16; ++i)
{
OpenPOWER on IntegriCloud