Changeset c51a7cd in mainline


Ignore:
Timestamp:
2009-06-14T12:30:27Z (15 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
87d3ecf
Parents:
1cbed6b
Message:

On condvar signal/broadcast, dequeue the waiting fibril from the waiters list.
Add FIBRIL_CONDVAR_INITIALIZE.

Location:
uspace/lib/libc
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/libc/generic/fibril_sync.c

    r1cbed6b rc51a7cd  
    198198                tmp = fcv->waiters.next;
    199199                f = list_get_instance(tmp, fibril_t, link);
     200                list_remove(&f->link);
    200201                fibril_add_ready((fid_t) f);
    201202                if (once)
  • uspace/lib/libc/include/fibril_sync.h

    r1cbed6b rc51a7cd  
    7575} fibril_condvar_t;
    7676
     77#define FIBRIL_CONDVAR_INITIALIZE(name) \
     78        fibril_condvar_t name = { \
     79                .waiters = { \
     80                        .next = &name.waiters, \
     81                        .prev = &name.waiters, \
     82                } \
     83        }
     84
    7785extern void fibril_mutex_initialize(fibril_mutex_t *);
    7886extern void fibril_mutex_lock(fibril_mutex_t *);
Note: See TracChangeset for help on using the changeset viewer.