From 3cc1da9d8b728f29b7b513129c165556cfec097f Mon Sep 17 00:00:00 2001 From: "kurtis.heimerl" Date: Sat, 26 Nov 2011 03:17:02 +0000 Subject: [PATCH] uhd: log useful information on monotonic errors Track the current errant and previous timestamp values. Signed-off-by: Thomas Tsou git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@2637 19bc5d8c-e614-43d4-8b26-e1612bc8e597 --- Transceiver52M/UHDDevice.cpp | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/Transceiver52M/UHDDevice.cpp b/Transceiver52M/UHDDevice.cpp index 68aeb03c..e134f56a 100644 --- a/Transceiver52M/UHDDevice.cpp +++ b/Transceiver52M/UHDDevice.cpp @@ -398,18 +398,23 @@ void uhd_device::setPriority() static int check_rx_md_err(uhd::rx_metadata_t &md, uhd::time_spec_t &prev_ts) { + uhd::time_spec_t ts; + // Missing timestamp if (!md.has_time_spec) { LOG(ERROR) << "UHD: Received packet missing timestamp"; return -1; } + ts = md.time_spec; + // Monotonicity check - if (md.time_spec < prev_ts) { - LOG(ERROR) << "Loss of monotonicity"; + if (ts < prev_ts) { + LOG(ERROR) << "UHD: Loss of monotonic: " << ts.get_real_secs(); + LOG(ERROR) << "UHD: Previous time: " << prev_ts.get_real_secs(); return -1; } else { - prev_ts = md.time_spec; + prev_ts = ts; } return 0;