diff options
| author | Nick Bofferding <bofferdn@us.ibm.com> | 2018-05-31 15:12:26 -0500 |
|---|---|---|
| committer | Nicholas E. Bofferding <bofferdn@us.ibm.com> | 2018-06-04 11:30:30 -0400 |
| commit | 6359b6a6e881a569c8588b6f2701a71e479fb5ae (patch) | |
| tree | 3950407291902ceb9fefff5664df58ea941acbe9 /src/usr/trace | |
| parent | a0ea8ab738073bc5c31c25d9f44fca0dfe09df16 (diff) | |
| download | talos-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/trace')
| -rw-r--r-- | src/usr/trace/daemonif.C | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/usr/trace/daemonif.C b/src/usr/trace/daemonif.C index f84844800..90e3fbec0 100644 --- a/src/usr/trace/daemonif.C +++ b/src/usr/trace/daemonif.C @@ -5,7 +5,7 @@ /* */ /* OpenPOWER HostBoot Project */ /* */ -/* Contributors Listed Below - COPYRIGHT 2012,2016 */ +/* Contributors Listed Below - COPYRIGHT 2012,2018 */ /* [+] International Business Machines Corp. */ /* */ /* */ @@ -40,6 +40,7 @@ namespace TRACE msg->type = TRACE_DAEMON_SHUTDOWN; msg_sendrecv(iv_queue, msg); msg_free(msg); + msg=nullptr; } msg_q_destroy(iv_queue); @@ -58,6 +59,10 @@ namespace TRACE if (i_blocking) { msg_sendrecv(iv_queue, msg); // sync message due to 'blocking'. + + // Always free the message since send/receive implies ownership + msg_free(msg); + msg=nullptr; } else { @@ -76,6 +81,7 @@ namespace TRACE msg->data[0] = i_enable ? 0x2 : 0x0; msg_sendrecv(iv_queue, msg); msg_free(msg); + msg=nullptr; } } |

