summaryrefslogtreecommitdiff
path: root/kern/mutex
AgeCommit message (Collapse)Author
2018-08-12kern/mutex/mutex_plain: fix macro namesRichard Braun
2018-07-30Rework assertive functionsRichard Braun
Instead of combining assertions and checking into single functions, rework those into pure checking functions usable with assert(). Those functions were introduced because of warnings about unused functions/variables caused by an earlier implementation of assert().
2018-07-10kern/sleepq: make disabling interrupts optionalRichard Braun
Commit d2a89f7f6e976d022527c2a5a1c75268aab8cd49 changed sleep queues to allow semaphores to be signalled from interrupt handlers, but this implied disabling interrupts for all synchronization objects, and most of them do not require interrupts to be disabled. The sleep queue interface is augmented with interrupt-related versions.
2018-04-21kern/mutex/mutex_adaptive: fix atomic operation callsRichard Braun
2018-04-19kern/atomic: remove shortcutsRichard Braun
These shortcuts just don't bring enough value.
2018-02-24New errno.h standard headerRichard Braun
Use standard errno codes. This change also adds strerror to string.h.
2018-02-24Don't use reserved identifiersRichard Braun
2018-01-29Fix undefined behavior in conditional macro replacementRichard Braun
See C11 6.10.3 ยง11 : If there are sequences of preprocessing tokens within the list of arguments that would otherwise act as preprocessing directives, the behavior is undefined.
2018-01-16Clean up init op dependencies between syscnt and mutexRichard Braun
2018-01-07kern/Kconfig: new MUTEX_DEBUG optionRichard Braun
2017-12-03Revert "Make assert have no side effects"Richard Braun
This reverts commit d18d0e85596f90e0bd597b33d58209d0b3973c95.
2017-09-02Make assert have no side effectsRichard Braun
This makes sure symbols referenced by assert uses may not be generated if unused. The recently introduced __unused macro is used to suppress compiler warnings resulting from this change.
2017-08-31kern/mutex/mutex_adaptive: rename some debugging countersRichard Braun
2017-08-31Make mutex debugging slightly more convenientRichard Braun
Define the macro controlling mutex debugging only if not already defined, allowing users to pass it through CFLAGS.
2017-08-31Add debugging code to the mutex modulesRichard Braun
2017-08-27kern/rtmutex: implement timed waitsRichard Braun
2017-08-27kern/mutex/mutex_adaptive: implement timed waitsRichard Braun
2017-08-27kern/mutex/mutex_plain: implement timed waitsRichard Braun
2017-07-25kern/mutex/mutex_plain: improve atomic accessRichard Braun
2017-07-21Merge branch 'adaptive_spinning'Richard Braun
2017-07-21kern/mutex: new adaptive spinning mutex implementationAgustina Arzille
2017-07-21Rework mutex implementation selectionAgustina Arzille