Ignore:
Timestamp:
2025-04-09T16:36:30Z (2 weeks ago)
Author:
GitHub <noreply@…>
Children:
3acb63b5
Parents:
2c94501 (diff), 597fa24 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
git-author:
Wayne Thornton <wmthornton-dev@…> (2025-04-09 16:36:30)
git-committer:
GitHub <noreply@…> (2025-04-09 16:36:30)
Message:

Merge pull request #3 from HelenOS/master

Enable static initialization of kernel synchronization primitives

File:
1 edited

Legend:

Unmodified
Added
Removed
  • TabularUnified kernel/generic/include/synch/waitq.h

    r2c94501 r9f945464  
    4040#include <abi/synch.h>
    4141#include <adt/list.h>
     42
     43#define WAITQ_INITIALIZER_WITH_COUNT(name, count) (waitq_t) { \
     44        .lock = IRQ_SPINLOCK_INITIALIZER(#name ".lock"), \
     45        .sleepers = LIST_INITIALIZER((name).sleepers), \
     46        .wakeup_balance = (count), \
     47}
     48
     49#define WAITQ_INITIALIZER(name) WAITQ_INITIALIZER_WITH_COUNT(name, 0)
     50
     51#define WAITQ_INITIALIZE_WITH_COUNT(name, count) \
     52        waitq_t name = WAITQ_INITIALIZER_WITH_COUNT(name, count)
     53
     54#define WAITQ_INITIALIZE(name) \
     55        waitq_t name = WAITQ_INITIALIZER(name)
    4256
    4357/** Wait queue structure.
Note: See TracChangeset for help on using the changeset viewer.