Xiang Xiao
6a3c2aded6
Fix wait loop and void cast ( #24 )
...
* Simplify EINTR/ECANCEL error handling
1. Add semaphore uninterruptible wait function
2 .Replace semaphore wait loop with a single uninterruptible wait
3. Replace all sem_xxx to nxsem_xxx
* Unify the void cast usage
1. Remove void cast for function because many place ignore the returned value witout cast
2. Replace void cast for variable with UNUSED macro
2020-01-02 10:54:43 -06:00
Gregory Nutt
bff30ff9bc
Fix minor typo / copy-paste. 'cancellaction point'->'cancellation point'
2019-08-23 11:57:35 -06:00
Gregory Nutt
f914ec6e2b
tools/nxstyle.c: Fix logic that detects if an operator is correctly delimited with spaces. sched/: Various changes because sched/ C files were used as Guinea Pigs to test nstyle.c.
2019-03-01 10:50:02 -06:00
Michał Łyszczek
626afb015b
nuttx/sched/mqueue: Change 'int prio' to 'unsigned int prio'. According to open group specification, priority field in mq_* functions should have unsigned type: http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/mqueue.h.html
2019-02-15 19:18:55 -06:00
Gregory Nutt
9546481054
Fix some typographical errors.
2018-09-14 06:55:45 -06:00
Gregory Nutt
eb79a575f6
Fix a few places where there was a semicolon following the 'if' condition, makeing the following logic unconditional.
2017-10-10 14:24:13 -06:00
Gregory Nutt
fca07be1df
Squashed commit of the following:
...
Change all calls to mq_send() and mq_timedsend() in the OS to calls to nxmq_send() and nxmq_timedsend(), making appropriate changes for differences in return values.
sched/mqueue: Add internal function nxmq_send() and nxmq_timedsend() that are equivalent to mq_send() and mq_timedsend() except that they do not create cancellation points and do to not modify the errno variable.
2017-10-10 08:44:12 -06:00
Gregory Nutt
e7c52bac60
Squashed commit of the following:
...
sched/mqueue: Rename all private static functions for use the nxmq_ vs. mq_ naming.
sched/mqueue: Rename all OS internal functions declared in sched/mqueue/mqueue.h to begin with nxmq_ vs. mq_. The mq_ prefix is reserved for standard application interfaces.
2017-10-09 09:06:46 -06:00
Gregory Nutt
b52e4e5ecd
Move cancellation point definitions to their own header file.
2016-12-10 09:08:26 -06:00
Gregory Nutt
bc3ca25cc7
Cancellation points: Close up some logic to eliminte some race conditions.
2016-12-10 08:36:58 -06:00
Gregory Nutt
7fce8022c6
Finishes all cancellation point logic
2016-12-09 16:50:34 -06:00
Gregory Nutt
e3bbfa2d85
mq_send() was not setting the errno value on certain failures to allocate a message
2016-09-15 12:42:24 -06:00
Gregory Nutt
368f241637
Correct some comments
2016-09-15 08:46:41 -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
7d46801f46
Reorder some operations to minimize a race condition
2015-03-10 10:41:21 -06:00
Gregory Nutt
4c6057eca1
mq_timedsend(): Do check for time errors if the message queue is not full. Noted by Freddie Chopin
2015-03-10 09:42:35 -06:00
Gregory Nutt
ad05793c0f
msg type should be char * not void * in mq_send, mq_timedsend, mq_receive, and mq_timedreceive. Noted by Pierre-Noel Bouteville
2014-12-05 19:16:14 -06:00
Gregory Nutt
fcfe877e96
Cosmetic update to comments
2014-09-29 16:22:21 -06:00
Gregory Nutt
b0f80cc8db
Move mq_open.c, mq_close.c, and mq_unlink.c from sched/mqueue to fs/mqueue
2014-09-29 13:35:32 -06:00
Gregory Nutt
e3fa34681b
Convert mqueue structure for use in VFS as inode data; rename mqueue_inode_s; remove links, reference counts and name from mqueue structure. These will be replaced by VFS data. Remove g_msgqueues and mq_findnamed.c; these will be replace with VFS logic
2014-09-29 13:19:11 -06:00
Gregory Nutt
e1769b22f1
Remove os_internal.h it has been replace by several new header files under sched/. There have been some sneak inclusion paths via os_internal.h, so expect a few compilation errors for some architectures
2014-08-08 18:39:28 -06:00
Gregory Nutt
08879ca34c
Move POSIX message queue files from sched/ to sched/mqueue
2014-08-08 12:31:23 -06:00