From a0b6f98e2087269b426891be3a377e23b74e36a2 Mon Sep 17 00:00:00 2001 From: kenneth Date: Tue, 28 Sep 2021 09:40:23 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20LOS=5FQueueInfoGet=E5=87=BD=E6=95=B0?= =?UTF-8?q?=E7=BB=9F=E8=AE=A1=E7=AD=89=E5=BE=85=E8=AF=BB=E5=86=99=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1=E6=9C=89=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit LOS_QueueInfoGet使用32位无符号数组来记录阻塞队列的任务,每个数组元素的每个bit位对应一个任务编号。 比如第一个数组元素的32个bit位对应任务编号0-31,第二个数组元素的32个bit位对应任务编号32-63....计算任务对应的数组的bit位数时使用 掩码OS_WAIT_TASK_ARRAY_ELEMENT_MASK的值应该为31,不应该依赖任务最大数目。 close #I4C6P2 Signed-off-by: kenneth --- kernel/include/los_queue.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel/include/los_queue.h b/kernel/include/los_queue.h index 797463bd..9874a14c 100644 --- a/kernel/include/los_queue.h +++ b/kernel/include/los_queue.h @@ -341,7 +341,7 @@ extern "C" { */ #define OS_WAIT_TASK_ARRAY_LEN ((LOSCFG_BASE_CORE_TSK_LIMIT >> 5) + 1) #define OS_WAIT_TASK_ID_TO_ARRAY_IDX(taskID) (taskID >> 5) -#define OS_WAIT_TASK_ARRAY_ELEMENT_MASK ((1 << OS_WAIT_TASK_ARRAY_LEN) - 1) +#define OS_WAIT_TASK_ARRAY_ELEMENT_MASK (31) /** * @ingroup los_queue