summaryrefslogtreecommitdiffstats
path: root/src/usr/errl
diff options
context:
space:
mode:
authorNick Bofferding <bofferdn@us.ibm.com>2018-05-31 15:12:26 -0500
committerNicholas E. Bofferding <bofferdn@us.ibm.com>2018-06-04 11:30:30 -0400
commit6359b6a6e881a569c8588b6f2701a71e479fb5ae (patch)
tree3950407291902ceb9fefff5664df58ea941acbe9 /src/usr/errl
parenta0ea8ab738073bc5c31c25d9f44fca0dfe09df16 (diff)
downloadtalos-hostboot-6359b6a6e881a569c8588b6f2701a71e479fb5ae.tar.gz
talos-hostboot-6359b6a6e881a569c8588b6f2701a71e479fb5ae.zip
Fix memory leaks associated with various msg_sendrecv calls
Change-Id: I30bb6627610391aea248d4a3c4d722ef1695b02f Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/59677 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Reviewed-by: ILYA SMIRNOV <ismirno@us.ibm.com> Reviewed-by: Michael Baiocchi <mbaiocch@us.ibm.com> Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com>
Diffstat (limited to 'src/usr/errl')
-rw-r--r--src/usr/errl/errlmanager.C6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/usr/errl/errlmanager.C b/src/usr/errl/errlmanager.C
index 24008e7ea..4476640f7 100644
--- a/src/usr/errl/errlmanager.C
+++ b/src/usr/errl/errlmanager.C
@@ -821,13 +821,17 @@ void ErrlManager::flushErrorLogs()
TRACDCOMP( g_trac_errl, ENTER_MRK "ErrlManager::flushErrorLogs" );
// Create message to send to msg handler
- msg_t *msg = NULL;
+ msg_t *msg = nullptr;
msg = msg_allocate();
msg->type = ERRLOG_FLUSH_TYPE;
do{
// Send message to msg handler, get msg back on l_RecvMsgQ
int rc = msg_sendrecv(iv_msgQ,msg);
+ // Always free the message since send/recv implies ownership
+ msg_free(msg);
+ msg=nullptr;
+
if(rc)
{
TRACFCOMP(g_trac_errl, "Error sending error log flush message. "
OpenPOWER on IntegriCloud