Commit Graph

16 Commits

Author SHA1 Message Date
chao an
b9d70365a1 sched/wqueue: semaphore count should be consistent with the number of work entries.
The number of work entries will be inconsistent with semaphore count
if the work is canceled, in extreme case, semaphore count will overflow
and fallback to 0 the workqueue will stop scheduling the enqueue work.

Signed-off-by: chao an <anchao@xiaomi.com>
2023-01-28 21:45:10 +09:00
Xiang Xiao
40ef5bc6db libc: Move queue.h from include to include/nuttx
to avoid the conflict with libuv's queue.h

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-09-26 08:04:58 +02:00
ligd
4a87578bdb wqueue: change single queue to double queue to improve speed
Signed-off-by: ligd <liguiding1@xiaomi.com>
2022-09-08 15:03:54 +02:00
Jiuzhu Dong
855c78bb9d work_queue: schedule the work queue using the timer mechanism
Signed-off-by: Jiuzhu Dong <dongjiuzhu1@xiaomi.com>
2021-07-27 21:01:38 -07:00
Nathan Hartman
af1fd49fb0 wqueue: Fix typos
include/nuttx/wqueue.h:
libs/libc/wqueue/work_cancel.c:
libs/libc/wqueue/work_queue.c:
sched/wqueue/kwork_cancel.c:
sched/wqueue/kwork_queue.c:

    * Fix spelling, grammar, and typos.
    * Improve wording in a few areas.
    * These changes affect comments only. No functional changes.
2021-07-16 19:54:08 -03:00
Gregory Nutt
45b8e3ce7f sched/wqueue: Update to Apache 2.0 headers.
Also run files through nxstyle to assurand coding standard compliance.
2020-03-11 18:39:53 -03:00
Gregory Nutt
7cf88d7dbd Make sure that labeling is used consistently in all function headers. 2018-02-01 10:00:02 -06:00
Gregory Nutt
a20863f6c0 Remove some empty file section section header comments 2016-02-17 17:15:08 -06:00
Gregory Nutt
6e3107650d nuttx/sched: Replace irqsave() with enter_critical_section(); replace irqrestore() with leave_critical_section() 2016-02-14 08:17:46 -06:00
Gregory Nutt
cb9e27c3b0 Standardize naming used for public data and function groupings 2015-10-02 16:30:35 -06:00
Gregory Nutt
a813baef0a User workqueue, cosmetic changes 2015-09-30 14:03:55 -06:00
Gregory Nutt
4cd57e1e4e Work queues: Logic that sets the queued indication and the logic that does the actual queuing must be atomic 2015-09-30 11:04:29 -06:00
Gregory Nutt
4a4b3ac537 Add support for multiple low-priority worker threads 2014-10-10 16:24:50 -06:00
Gregory Nutt
cf59a195ba User-mode work queue logic should not disable interrupts 2014-10-10 14:52:04 -06:00
Gregory Nutt
2015fd76e2 Fix some conditional logic in last work queue repartitioning change 2014-10-10 08:47:41 -06:00
Gregory Nutt
1afc9773ac Decoupling work queue data structures. This is part of the preparation to support multiple low-priority worker threads 2014-10-10 08:35:58 -06:00