Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/libc/include/fibril.h

    rb1d3c36 rec8b0dac  
    4040#include <libarch/tls.h>
    4141
    42 #define context_set_generic(c, _pc, stack, size, ptls) \
     42#ifndef context_set
     43#define context_set(c, _pc, stack, size, ptls) \
    4344        (c)->pc = (sysarg_t) (_pc); \
    4445        (c)->sp = ((sysarg_t) (stack)) + (size) - SP_DELTA; \
    4546        (c)->tls = (sysarg_t) (ptls);
     47#endif /* context_set */
    4648
    47 #define FIBRIL_SERIALIZED  1
    48 #define FIBRIL_WRITER      2
     49#define FIBRIL_SERIALIZED       1
     50#define FIBRIL_WRITER           2
    4951
    5052typedef enum {
     
    5759typedef sysarg_t fid_t;
    5860
    59 typedef struct fibril {
     61struct fibril {
    6062        link_t link;
    6163        context_t ctx;
     
    6870        int retval;
    6971        int flags;
    70 } fibril_t;
     72};
     73typedef struct fibril fibril_t;
    7174
    7275/** Fibril-local variable specifier */
    7376#define fibril_local __thread
    7477
    75 extern int context_save(context_t *ctx) __attribute__((returns_twice));
    76 extern void context_restore(context_t *ctx) __attribute__((noreturn));
     78extern int context_save(context_t *c) __attribute__ ((returns_twice));
     79extern void context_restore(context_t *c) __attribute__ ((noreturn));
    7780
    7881extern fid_t fibril_create(int (*func)(void *), void *arg);
     
    8790extern void fibril_dec_sercount(void);
    8891
    89 static inline int fibril_yield(void)
    90 {
     92static inline int fibril_yield(void) {
    9193        return fibril_switch(FIBRIL_PREEMPT);
    9294}
Note: See TracChangeset for help on using the changeset viewer.