[link-quality] remove ENABLE_TX_ERROR_RATE_TRACKING feature flag (#4417)

OPENTHREAD_CONFIG_ENABLE_TX_ERROR_RATE_TRACKING defaults to 1 and
there have not been any	known users setting the	feature flag to 0.
This commit is contained in:
Jonathan Hui
2019-12-18 10:24:13 -08:00
committed by GitHub
parent c646e6f57a
commit 2a9f1c76d1
11 changed files with 22 additions and 66 deletions
-3
View File
@@ -85,9 +85,6 @@ typedef struct otLinkModeConfig
/**
* This structure holds diagnostic information for a neighboring Thread node
*
* `mFrameErrorRate` and `mMessageErrorRate` require `OPENTHREAD_CONFIG_ENABLE_TX_ERROR_RATE_TRACKING` feature to be
* enabled.
*
*/
typedef struct
{
-3
View File
@@ -53,9 +53,6 @@ extern "C" {
/**
* This structure holds diagnostic information for a Thread Child
*
* `mFrameErrorRate` and `mMessageErrorRate` require `OPENTHREAD_CONFIG_ENABLE_TX_ERROR_RATE_TRACKING` feature to be
* enabled.
*
*/
typedef struct
{
-17
View File
@@ -48,24 +48,9 @@
#define OPENTHREAD_CONFIG_CCA_FAILURE_RATE_AVERAGING_WINDOW 512
#endif
/**
* @def OPENTHREAD_CONFIG_ENABLE_TX_ERROR_RATE_TRACKING
*
* Define as 1 to enable transmission error rate tracking (for both MAC frames and IPv6 messages).
*
* When enabled, OpenThread will track average error rate of MAC frame transmissions and IPv6 message error rate for
* every neighbor.
*
*/
#ifndef OPENTHREAD_CONFIG_ENABLE_TX_ERROR_RATE_TRACKING
#define OPENTHREAD_CONFIG_ENABLE_TX_ERROR_RATE_TRACKING 1
#endif
/**
* @def OPENTHREAD_CONFIG_FRAME_TX_ERR_RATE_AVERAGING_WINDOW
*
* Applicable only if error rate tracking is enabled (i.e., `OPENTHREAD_CONFIG_ENABLE_TX_ERROR_RATE_TRACKING` is set).
*
* OpenThread's MAC implementation maintains the average error rate of MAC frame transmissions per neighbor. This
* parameter specifies the window (in terms of number of frames/sample) over which the average error rate is maintained.
* Practically, the average value can be considered as the percentage of failed (no ack) MAC frame transmissions over
@@ -79,8 +64,6 @@
/**
* @def OPENTHREAD_CONFIG_IPV6_TX_ERR_RATE_AVERAGING_WINDOW
*
* Applicable only if error rate tracking is enabled (i.e., `OPENTHREAD_CONFIG_ENABLE_TX_ERROR_RATE_TRACKING` is set).
*
* OpenThread maintains the average error rate of IPv6 messages per neighbor. This parameter specifies the
* window (in terms of number of messages) over which the average error rate is maintained. Practically, the average
* value can be considered as the percentage of failed (no ack) messages over (approximately) last AVERAGING_WINDOW
@@ -451,4 +451,8 @@
"OPENTHREAD_CONFIG_MAC_MAX_FRAME_RETRIES_INDIRECT was replaced by OPENTHREAD_CONFIG_MAC_DEFAULT_MAX_FRAME_RETRIES_INDIRECT."
#endif
#ifdef OPENTHREAD_CONFIG_ENABLE_TX_ERROR_RATE_TRACKING
#error "OPENTHREAD_CONFIG_ENABLE_TX_ERROR_RATE_TRACKING was removed."
#endif
#endif // OPENTHREAD_CORE_CONFIG_CHECK_H_
-4
View File
@@ -1101,8 +1101,6 @@ void Mac::RecordFrameTransmitStatus(const TxFrame &aFrame,
aFrame.GetDstAddr(dstAddr);
neighbor = Get<Mle::MleRouter>().GetNeighbor(dstAddr);
#if OPENTHREAD_CONFIG_ENABLE_TX_ERROR_RATE_TRACKING
// Record frame transmission success/failure state (for a neighbor).
if ((neighbor != NULL) && ackRequested)
@@ -1129,8 +1127,6 @@ void Mac::RecordFrameTransmitStatus(const TxFrame &aFrame,
}
}
#endif // OPENTHREAD_CONFIG_ENABLE_TX_ERROR_RATE_TRACKING
// Log frame transmission failure.
if (aError != OT_ERROR_NONE)
-2
View File
@@ -146,10 +146,8 @@ void LinkQualityInfo::Clear(void)
SetLinkQuality(0);
mLastRss = OT_RADIO_RSSI_INVALID;
#if OPENTHREAD_CONFIG_ENABLE_TX_ERROR_RATE_TRACKING
mFrameErrorRate.Reset();
mMessageErrorRate.Reset();
#endif
}
void LinkQualityInfo::AddRss(int8_t aNoiseFloor, int8_t aRss)
+1 -6
View File
@@ -306,8 +306,6 @@ public:
*/
int8_t GetLastRss(void) const { return mLastRss; }
#if OPENTHREAD_CONFIG_ENABLE_TX_ERROR_RATE_TRACKING
/**
* This method adds a MAC frame transmission status (success/failure) and updates the frame tx error rate.
*
@@ -358,8 +356,6 @@ public:
*/
uint16_t GetMessageErrorRate(void) const { return mMessageErrorRate.GetFailureRate(); }
#endif // OPENTHREAD_CONFIG_ENABLE_TX_ERROR_RATE_TRACKING
/**
* This method converts a received signal strength value to a link margin value.
*
@@ -436,10 +432,9 @@ private:
RssAverager mRssAverager;
uint8_t mLinkQuality;
int8_t mLastRss;
#if OPENTHREAD_CONFIG_ENABLE_TX_ERROR_RATE_TRACKING
SuccessRateTracker mFrameErrorRate;
SuccessRateTracker mMessageErrorRate;
#endif
};
/**
+17 -23
View File
@@ -3660,17 +3660,13 @@ otError MleRouter::GetChildInfo(Child &aChild, otChildInfo &aChildInfo)
aChildInfo.mLinkQualityIn = aChild.GetLinkInfo().GetLinkQuality();
aChildInfo.mAverageRssi = aChild.GetLinkInfo().GetAverageRss();
aChildInfo.mLastRssi = aChild.GetLinkInfo().GetLastRss();
#if OPENTHREAD_CONFIG_ENABLE_TX_ERROR_RATE_TRACKING
aChildInfo.mFrameErrorRate = aChild.GetLinkInfo().GetFrameErrorRate();
aChildInfo.mMessageErrorRate = aChild.GetLinkInfo().GetMessageErrorRate();
#endif
aChildInfo.mRxOnWhenIdle = aChild.IsRxOnWhenIdle();
aChildInfo.mSecureDataRequest = aChild.IsSecureDataRequest();
aChildInfo.mFullThreadDevice = aChild.IsFullThreadDevice();
aChildInfo.mFullNetworkData = aChild.IsFullNetworkData();
aChildInfo.mIsStateRestoring = aChild.IsStateRestoring();
aChildInfo.mFrameErrorRate = aChild.GetLinkInfo().GetFrameErrorRate();
aChildInfo.mMessageErrorRate = aChild.GetLinkInfo().GetMessageErrorRate();
aChildInfo.mRxOnWhenIdle = aChild.IsRxOnWhenIdle();
aChildInfo.mSecureDataRequest = aChild.IsSecureDataRequest();
aChildInfo.mFullThreadDevice = aChild.IsFullThreadDevice();
aChildInfo.mFullNetworkData = aChild.IsFullNetworkData();
aChildInfo.mIsStateRestoring = aChild.IsStateRestoring();
exit:
return error;
@@ -3678,18 +3674,16 @@ exit:
void MleRouter::GetNeighborInfo(Neighbor &aNeighbor, otNeighborInfo &aNeighInfo)
{
aNeighInfo.mExtAddress = aNeighbor.GetExtAddress();
aNeighInfo.mAge = Time::MsecToSec(TimerMilli::GetNow() - aNeighbor.GetLastHeard());
aNeighInfo.mRloc16 = aNeighbor.GetRloc16();
aNeighInfo.mLinkFrameCounter = aNeighbor.GetLinkFrameCounter();
aNeighInfo.mMleFrameCounter = aNeighbor.GetMleFrameCounter();
aNeighInfo.mLinkQualityIn = aNeighbor.GetLinkInfo().GetLinkQuality();
aNeighInfo.mAverageRssi = aNeighbor.GetLinkInfo().GetAverageRss();
aNeighInfo.mLastRssi = aNeighbor.GetLinkInfo().GetLastRss();
#if OPENTHREAD_CONFIG_ENABLE_TX_ERROR_RATE_TRACKING
aNeighInfo.mFrameErrorRate = aNeighbor.GetLinkInfo().GetFrameErrorRate();
aNeighInfo.mMessageErrorRate = aNeighbor.GetLinkInfo().GetMessageErrorRate();
#endif
aNeighInfo.mExtAddress = aNeighbor.GetExtAddress();
aNeighInfo.mAge = Time::MsecToSec(TimerMilli::GetNow() - aNeighbor.GetLastHeard());
aNeighInfo.mRloc16 = aNeighbor.GetRloc16();
aNeighInfo.mLinkFrameCounter = aNeighbor.GetLinkFrameCounter();
aNeighInfo.mMleFrameCounter = aNeighbor.GetMleFrameCounter();
aNeighInfo.mLinkQualityIn = aNeighbor.GetLinkInfo().GetLinkQuality();
aNeighInfo.mAverageRssi = aNeighbor.GetLinkInfo().GetAverageRss();
aNeighInfo.mLastRssi = aNeighbor.GetLinkInfo().GetLastRss();
aNeighInfo.mFrameErrorRate = aNeighbor.GetLinkInfo().GetFrameErrorRate();
aNeighInfo.mMessageErrorRate = aNeighbor.GetLinkInfo().GetMessageErrorRate();
aNeighInfo.mRxOnWhenIdle = aNeighbor.IsRxOnWhenIdle();
aNeighInfo.mSecureDataRequest = aNeighbor.IsSecureDataRequest();
aNeighInfo.mFullThreadDevice = aNeighbor.IsFullThreadDevice();
-2
View File
@@ -1809,9 +1809,7 @@ template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_CAPS>(void)
SuccessOrExit(error = mEncoder.WriteUintPacked(SPINEL_CAP_TIME_SYNC));
#endif
#if OPENTHREAD_CONFIG_ENABLE_TX_ERROR_RATE_TRACKING
SuccessOrExit(error = mEncoder.WriteUintPacked(SPINEL_CAP_ERROR_RATE_TRACKING));
#endif
#if OPENTHREAD_CONFIG_MLE_STEERING_DATA_SET_OOB_ENABLE
SuccessOrExit(error = mEncoder.WriteUintPacked(SPINEL_CAP_OOB_STEERING_DATA));
-2
View File
@@ -298,10 +298,8 @@ NcpBase::PropertyHandler NcpBase::FindGetPropertyHandler(spinel_prop_key_t aKey)
#if OPENTHREAD_FTD
{SPINEL_PROP_THREAD_CHILD_TABLE_ADDRESSES, &NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_CHILD_TABLE_ADDRESSES>},
#endif
#if OPENTHREAD_CONFIG_ENABLE_TX_ERROR_RATE_TRACKING
{SPINEL_PROP_THREAD_NEIGHBOR_TABLE_ERROR_RATES,
&NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_NEIGHBOR_TABLE_ERROR_RATES>},
#endif
#if OPENTHREAD_FTD
{SPINEL_PROP_THREAD_ADDRESS_CACHE_TABLE, &NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_ADDRESS_CACHE_TABLE>},
{SPINEL_PROP_THREAD_NEW_DATASET, &NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_NEW_DATASET>},
-4
View File
@@ -610,8 +610,6 @@ exit:
return error;
}
#if OPENTHREAD_CONFIG_ENABLE_TX_ERROR_RATE_TRACKING
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_NEIGHBOR_TABLE_ERROR_RATES>(void)
{
otError error = OT_ERROR_NONE;
@@ -636,8 +634,6 @@ exit:
return error;
}
#endif // OPENTHREAD_CONFIG_ENABLE_TX_ERROR_RATE_TRACKING
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_ASSISTING_PORTS>(void)
{
otError error = OT_ERROR_NONE;