Subversion Repositories HelenOS-historic

Rev

Rev 1117 | Rev 1460 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1117 Rev 1139
Line 35... Line 35...
35
#include <genarch/mm/page_ht.h>
35
#include <genarch/mm/page_ht.h>
36
#include <genarch/mm/page_pt.h>
36
#include <genarch/mm/page_pt.h>
37
 
37
 
38
/** Kernel-side futex structure. */
38
/** Kernel-side futex structure. */
39
struct futex {
39
struct futex {
40
    __address paddr;    /** Physical address of the status variable. */
40
    __address paddr;    /**< Physical address of the status variable. */
41
    waitq_t wq;     /** Wait queue for threads waiting for futex availability. */
41
    waitq_t wq;     /**< Wait queue for threads waiting for futex availability. */
42
    link_t ht_link;     /** Futex hash table link. */
42
    link_t ht_link;     /**< Futex hash table link. */
43
};
43
};
44
 
44
 
45
extern void futex_init(void);
45
extern void futex_init(void);
46
extern __native sys_futex_sleep_timeout(__address uaddr, __u32 usec, int trydown);
46
extern __native sys_futex_sleep_timeout(__address uaddr, __u32 usec, int trydown);
47
extern __native sys_futex_wakeup(__address uaddr);
47
extern __native sys_futex_wakeup(__address uaddr);