diff options
author | Matthias P. Braendli <matthias.braendli@mpb.li> | 2015-06-07 18:24:20 +0200 |
---|---|---|
committer | Matthias P. Braendli <matthias.braendli@mpb.li> | 2015-06-07 18:36:03 +0200 |
commit | 5e5c0871db3069958ae072c5a367c4467f261d3e (patch) | |
tree | eee411a72d35a9b780e05112aa11d4671a377da2 | |
parent | 48b06743eded628962a9df94a7e1c662bf6fbee2 (diff) | |
download | dabmod-5e5c0871db3069958ae072c5a367c4467f261d3e.tar.gz dabmod-5e5c0871db3069958ae072c5a367c4467f261d3e.tar.bz2 dabmod-5e5c0871db3069958ae072c5a367c4467f261d3e.zip |
Revert priority setting for mod and UHD threads
It is safer to go back to the previous state, given that
several users have expressed concerns about reliability.
Revert "Set priorities for modulator and UHD threads".
This reverts commit c9ea7fb88809d935f3eaeee108415ff5abd17ead.
-rw-r--r-- | src/DabMod.cpp | 9 | ||||
-rw-r--r-- | src/OutputUHD.cpp | 14 |
2 files changed, 4 insertions, 19 deletions
diff --git a/src/DabMod.cpp b/src/DabMod.cpp index 9f096ab..045138a 100644 --- a/src/DabMod.cpp +++ b/src/DabMod.cpp @@ -768,15 +768,6 @@ int launch_modulator(int argc, char* argv[]) } #endif - // Set thread priority to realtime - const int policy = SCHED_RR; - sched_param sp; - sp.sched_priority = sched_get_priority_min(policy); - int thread_prio_ret = pthread_setschedparam(pthread_self(), policy, &sp); - if (thread_prio_ret != 0) { - etiLog.level(error) << "Could not set priority for Modulator thread:" << thread_prio_ret; - } - while (run_again) { Flowgraph flowgraph; diff --git a/src/OutputUHD.cpp b/src/OutputUHD.cpp index 6ad7dfd..24d206f 100644 --- a/src/OutputUHD.cpp +++ b/src/OutputUHD.cpp @@ -104,8 +104,12 @@ OutputUHD::OutputUHD( RC_ADD_PARAMETER(muting, "Mute the output by stopping the transmitter"); RC_ADD_PARAMETER(staticdelay, "Set static delay (uS) between 0 and 96000"); + // TODO: find out how to use boost::bind to give the logger to the + // uhd_msg_handler uhd::msg::register_handler(uhd_msg_handler); + uhd::set_thread_priority_safe(); + //create a usrp device MDEBUG("OutputUHD:Creating the usrp device with: %s...\n", device.str().c_str()); @@ -474,16 +478,6 @@ void UHDWorker::process() // Transmit timeout const double timeout = 20.0; - // Set thread priority to realtime - const int policy = SCHED_RR; - sched_param sp; - sp.sched_priority = sched_get_priority_min(policy); - int ret = pthread_setschedparam(pthread_self(), policy, &sp); - if (ret != 0) { - etiLog.level(error) << "Could not set priority for UHD thread:" << ret; - } - - #if FAKE_UHD == 0 uhd::stream_args_t stream_args("fc32"); //complex floats uhd::tx_streamer::sptr myTxStream = uwd->myUsrp->get_tx_stream(stream_args); |