diff options
author | Virendra Kakade <virendra.kakade@ni.com> | 2019-04-24 14:36:42 -0700 |
---|---|---|
committer | michael-west <michael.west@ettus.com> | 2019-05-21 17:20:42 -0700 |
commit | 49d05ada725283aedbc6734533e287b6a7b669d2 (patch) | |
tree | 8f78670ca7b574e15e4bef3a919f7c0fb7d9fe7d | |
parent | ed2507a688d8d2e3aa6825f90ce29192d244d233 (diff) | |
download | uhd-49d05ada725283aedbc6734533e287b6a7b669d2.tar.gz uhd-49d05ada725283aedbc6734533e287b6a7b669d2.tar.bz2 uhd-49d05ada725283aedbc6734533e287b6a7b669d2.zip |
mpmd: Release resources on destruction
This will clear the property tree, block registry, transport managers,
and motherboard list on destruction of mpmd_impl.
-rw-r--r-- | host/lib/usrp/mpmd/mpmd_impl.cpp | 4 | ||||
-rw-r--r-- | host/lib/usrp/mpmd/mpmd_mboard_impl.cpp | 6 |
2 files changed, 6 insertions, 4 deletions
diff --git a/host/lib/usrp/mpmd/mpmd_impl.cpp b/host/lib/usrp/mpmd/mpmd_impl.cpp index 2f3584498..05d847060 100644 --- a/host/lib/usrp/mpmd/mpmd_impl.cpp +++ b/host/lib/usrp/mpmd/mpmd_impl.cpp @@ -231,7 +231,9 @@ mpmd_impl::mpmd_impl(const device_addr_t& device_args) mpmd_impl::~mpmd_impl() { - /* nop */ + _rfnoc_block_ctrl.clear(); + _tree.reset(); + _mb.clear(); } /***************************************************************************** diff --git a/host/lib/usrp/mpmd/mpmd_mboard_impl.cpp b/host/lib/usrp/mpmd/mpmd_mboard_impl.cpp index e2d347778..8bf8d6826 100644 --- a/host/lib/usrp/mpmd/mpmd_mboard_impl.cpp +++ b/host/lib/usrp/mpmd/mpmd_mboard_impl.cpp @@ -302,9 +302,9 @@ mpmd_mboard_impl::mpmd_mboard_impl( mpmd_mboard_impl::~mpmd_mboard_impl() { - // Destroy the claimer task to avoid spurious asynchronous reclaim call after the - // unclaim. - UHD_SAFE_CALL(dump_logs(); _claimer_task.reset(); + // Destroy the claimer task to avoid spurious asynchronous reclaim call + // after the unclaim. + UHD_SAFE_CALL(dump_logs(); _claimer_task.reset(); _xport_mgr.reset(); if (not rpc->request_with_token<bool>("unclaim")) { UHD_LOG_WARNING("MPMD", "Failure to ack unclaim!"); }); |