summaryrefslogtreecommitdiff
path: root/Libraries/LibThread/Lock.h
AgeCommit message (Collapse)Author
2020-08-14LibThread: Lockable - add forwarding constructorMuhammad Zahalqa
2020-08-10Kernel: More PID/TID typingBen Wiederhake
2020-08-07LibThread: Remove redundant --m_level in Lock::unlock() (#3040)Muhammad Zahalqa
2020-08-06LibThread: Remove redundant r/w of atomic variable in Lock::lock() (#3013)Muhammad Zahalqa
m_holder.compare_exchange_strong(expected, desired, ...) will either successfully update the value to desired if == expected or put the current value in expected otherwise.
2020-04-30AK: Add ALWAYS_INLINE, NEVER_INLINE and FLATTEN macrosAndreas Kling
It's tedious to write (and look at) [[gnu::always_inline]] etc. :^)
2020-04-13LibThread: Simplify the userspace Lock to remove CAS on unlock()Andreas Kling
Instead of using a separate synchronization variable, just use the lock holder TID for synchronization. This way, we only need to CAS when first acquiring a lock.
2020-01-18Meta: Add license header to source filesAndreas Kling
As suggested by Joshua, this commit adds the 2-clause BSD license as a comment block to the top of every source file. For the first pass, I've just added myself for simplicity. I encourage everyone to add themselves as copyright holders of any file they've added or modified in some significant way. If I've added myself in error somewhere, feel free to replace it with the appropriate copyright holder instead. Going forward, all new source files should include a license header.
2019-10-12AK: Add Atomic.hTom
Use gcc built-in atomics
2019-08-26LibThread: Move CLock to LibThread::LockSergey Bugaev
And adapt all the code that uses it.