mirror of
https://github.com/apache/nuttx.git
synced 2026-08-20 21:18:23 +00:00
when work_cancel was called, we need to check work.timer whether is active by WDOG_ISACTIVE for work_queue with delay. The wdog cb has not been executed when the flag:active is cleared and if we check flag:active at this moment, WDOG_ISACTIVE will return false. so the work_cancel will sem_wait until post a semaphore, but all free hpwork_thread also wait this semphore and their priority are high than caller, this will be a race condition causing thread/task of calling work_cancel block. Change-Id: Id86289da60bf967d1062c1cdaaf6959b4f6dd054 Signed-off-by: Jiuzhu Dong <dongjiuzhu1@xiaomi.com> |
||
|---|---|---|
| .. | ||
| clock | ||
| environ | ||
| group | ||
| init | ||
| irq | ||
| module | ||
| mqueue | ||
| paging | ||
| pthread | ||
| sched | ||
| semaphore | ||
| signal | ||
| task | ||
| timer | ||
| wdog | ||
| wqueue | ||
| Kconfig | ||
| Makefile | ||