Changeset 45c8eea in mainline for uspace/lib/c/generic/thread/futex.c


Ignore:
Timestamp:
2018-11-11T15:47:39Z (5 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
f4cb6c5f
Parents:
269bc459
git-author:
Jakub Jermar <jakub@…> (2018-11-10 17:49:44)
git-committer:
Jakub Jermar <jakub@…> (2018-11-11 15:47:39)
Message:

Preallocate waitq handle during initialization

Do not clutter futex_down_composable() with the preallocation of the
wait queue handle and do it single-threadedly in futex_initialize().

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/c/generic/thread/futex.c

    r269bc459 r45c8eea  
    4949 * @param val   Initialization value.
    5050 *
     51 * @return      Error code.
    5152 */
    52 void futex_initialize(futex_t *futex, int val)
     53errno_t futex_initialize(futex_t *futex, int val)
    5354{
    5455        atomic_store_explicit(&futex->val, val, memory_order_relaxed);
    55         atomic_store_explicit(&futex->lock, 0, memory_order_relaxed);
    5656        futex->whandle = CAP_NIL;
     57        return futex_allocate_waitq(futex);
    5758}
    5859
Note: See TracChangeset for help on using the changeset viewer.