diff options
author | Martin Braun <martin.braun@ettus.com> | 2018-07-30 13:46:14 -0700 |
---|---|---|
committer | Martin Braun <martin.braun@ettus.com> | 2018-07-31 10:11:22 -0700 |
commit | bd7c0f67cf8aa166cf4e1314bd96858f78eeb8f9 (patch) | |
tree | db0ba7d965ebee4233e8b7fd2b84b08e51f75a48 /host/lib | |
parent | 57079accbb20e04602436a90bec7b71d0f6815fc (diff) | |
download | uhd-bd7c0f67cf8aa166cf4e1314bd96858f78eeb8f9.tar.gz uhd-bd7c0f67cf8aa166cf4e1314bd96858f78eeb8f9.tar.bz2 uhd-bd7c0f67cf8aa166cf4e1314bd96858f78eeb8f9.zip |
b100: Fix fifo_ctrl_excelsior not exiting
Diffstat (limited to 'host/lib')
-rw-r--r-- | host/lib/usrp/b100/fifo_ctrl_excelsior.cpp | 15 |
1 files changed, 2 insertions, 13 deletions
diff --git a/host/lib/usrp/b100/fifo_ctrl_excelsior.cpp b/host/lib/usrp/b100/fifo_ctrl_excelsior.cpp index e110919f9..ed278e6be 100644 --- a/host/lib/usrp/b100/fifo_ctrl_excelsior.cpp +++ b/host/lib/usrp/b100/fifo_ctrl_excelsior.cpp @@ -5,7 +5,7 @@ // SPDX-License-Identifier: GPL-3.0-or-later // -#include <uhdlib/usrp/common/fifo_ctrl_excelsior.hpp> +#include "fifo_ctrl_excelsior.hpp" #include <uhdlib/usrp/common/async_packet_handler.hpp> #include <uhd/exception.hpp> #include <uhd/utils/log.hpp> @@ -16,9 +16,6 @@ #include <uhd/transport/vrt_if_packet.hpp> #include <uhd/transport/bounded_buffer.hpp> #include <boost/thread/mutex.hpp> -#include <boost/thread/thread.hpp> -#include <boost/format.hpp> -#include <boost/bind.hpp> using namespace uhd; using namespace uhd::usrp; @@ -54,7 +51,7 @@ public: while (_xport->get_recv_buff(0.0)){} //flush this->set_time(uhd::time_spec_t(0.0)); this->set_tick_rate(1.0); //something possible but bogus - _msg_task = task::make(boost::bind(&fifo_ctrl_excelsior_impl::handle_msg, this)); + _msg_task = task::make([this](){ this->handle_msg(); }); this->init_spi(); } @@ -66,18 +63,10 @@ public: } bool pop_async_msg(async_metadata_t &async_metadata, double timeout){ - boost::this_thread::disable_interruption di; //disable because the wait can throw return _async_fifo.pop_with_timed_wait(async_metadata, timeout); } void handle_msg(void){ - set_thread_priority_safe(); - while (not boost::this_thread::interruption_requested()){ - this->handle_msg1(); - } - } - - void handle_msg1(void){ managed_recv_buffer::sptr buff = _xport->get_recv_buff(); if (not buff) return; const uint32_t *pkt = buff->cast<const uint32_t *>(); |