From 6e79add03f41d5badbb11248baef9491e48fd7ae Mon Sep 17 00:00:00 2001 From: Jonathan Hui Date: Tue, 4 Apr 2023 09:48:33 -0700 Subject: [PATCH] [data-poll-sender] clamp poll period based on child timeout (#8927) --- src/core/mac/data_poll_sender.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/core/mac/data_poll_sender.cpp b/src/core/mac/data_poll_sender.cpp index 84486ffd2..acc968c5c 100644 --- a/src/core/mac/data_poll_sender.cpp +++ b/src/core/mac/data_poll_sender.cpp @@ -542,8 +542,10 @@ uint32_t DataPollSender::CalculatePollPeriod(void) const uint32_t DataPollSender::GetDefaultPollPeriod(void) const { - uint32_t period = Time::SecToMsec(Get().GetTimeout()); uint32_t pollAhead = static_cast(kRetxPollPeriod) * kMaxPollRetxAttempts; + uint32_t period; + + period = Time::SecToMsec(Min(Get().GetTimeout(), Time::MsecToSec(TimerMilli::kMaxDelay))); #if OPENTHREAD_CONFIG_MAC_CSL_RECEIVER_ENABLE && OPENTHREAD_CONFIG_MAC_CSL_AUTO_SYNC_ENABLE if (Get().IsCslEnabled())