From 8679d997a5050433a9c3ccbd3b27b5479c3de73f Mon Sep 17 00:00:00 2001 From: Simon Lin Date: Thu, 8 Jul 2021 03:49:18 +0800 Subject: [PATCH] [dua] fix infinite DUA.req loop (#6797) Verified that this commit fixes the infinite DUA.req loop. This is a quick fix. We still need to reactor mChildIndexDuaRegistering because there are still potential issues. --- src/core/thread/dua_manager.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/core/thread/dua_manager.cpp b/src/core/thread/dua_manager.cpp index 1db85b9e9..ad2857fb6 100644 --- a/src/core/thread/dua_manager.cpp +++ b/src/core/thread/dua_manager.cpp @@ -474,7 +474,7 @@ void DuaManager::PerformNextRegistration(void) const Ip6::Address *duaPtr = nullptr; Child * child = nullptr; - if (!mChildDuaMask.Get(mChildIndexDuaRegistering)) + if (!mChildDuaMask.Get(mChildIndexDuaRegistering) || mChildDuaRegisteredMask.Get(mChildIndexDuaRegistering)) { for (Child &iter : Get().Iterate(Child::kInStateValid)) {