summaryrefslogtreecommitdiffstats
path: root/src/usr/fsi
diff options
context:
space:
mode:
authorBrian Horton <brianh@linux.ibm.com>2012-05-09 12:07:17 -0500
committerA. Patrick Williams III <iawillia@us.ibm.com>2012-06-26 14:46:40 -0500
commit200cabc160d825b9097f234f25270b398c5339b6 (patch)
tree1594a5d53ccc08f21a753c72f0bf2c0d049a6e97 /src/usr/fsi
parent49b5391b8c1e20623ffde799bc17a75efb20e187 (diff)
downloadtalos-hostboot-200cabc160d825b9097f234f25270b398c5339b6.tar.gz
talos-hostboot-200cabc160d825b9097f234f25270b398c5339b6.zip
Errlog User Details : Hardware Register
Add support for new User Details error log class that will log a hardware register. Developer can read the data and then call the errlog function to have it dumped, or can just call the errlog function to do the deviceRead go get the data. Also, fix bugs in a couple of device read functions that were too strict in their size check - input buffer size just needs to be >= size required, not ==. Change-Id: I05ba42ecd13b3fc963c56bb706d855c9c89412a3 RTC: 38497 Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com> Tested-by: Jenkins Server
Diffstat (limited to 'src/usr/fsi')
-rw-r--r--src/usr/fsi/fsidd.C2
-rw-r--r--src/usr/fsi/fsipres.C2
2 files changed, 2 insertions, 2 deletions
diff --git a/src/usr/fsi/fsidd.C b/src/usr/fsi/fsidd.C
index ba9838865..73d6ebece 100644
--- a/src/usr/fsi/fsidd.C
+++ b/src/usr/fsi/fsidd.C
@@ -90,7 +90,7 @@ errlHndl_t ddOp(DeviceFW::OperationType i_opType,
TRACUCOMP( g_trac_fsi, "FSI::ddOp> i_addr=%llX, target=%.8X", i_addr, TARGETING::get_huid(i_target) );
do{
- if( io_buflen != sizeof(uint32_t) )
+ if (unlikely(io_buflen < sizeof(uint32_t)))
{
TRACFCOMP( g_trac_fsi, ERR_MRK "FSI::ddOp> Invalid data length : io_buflen=%d", io_buflen );
/*@
diff --git a/src/usr/fsi/fsipres.C b/src/usr/fsi/fsipres.C
index 9954204c0..a22002a44 100644
--- a/src/usr/fsi/fsipres.C
+++ b/src/usr/fsi/fsipres.C
@@ -58,7 +58,7 @@ errlHndl_t presenceDetect(DeviceFW::OperationType i_opType,
int64_t i_accessType,
va_list i_args)
{
- if (io_buflen != sizeof(bool))
+ if (unlikely(io_buflen < sizeof(bool)))
{
TRACFCOMP(g_trac_fsi,
ERR_MRK "FSI::presenceDetect> Invalid data length: %d",
OpenPOWER on IntegriCloud