Deleted Added
full compact
linux_futex.h (177460) linux_futex.h (178976)
1/* $NetBSD: linux_futex.h,v 1.2 2005/12/11 12:20:19 christos Exp $ */
2
3/*-
4 * Copyright (c) 2005 Emmanuel Dreyfus, all rights reserved.
5 *
6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that the following conditions
8 * are met:

--- 16 unchanged lines hidden (view full) ---

25 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
26 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
27 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
28 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
29 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
30 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
31 * POSSIBILITY OF SUCH DAMAGE.
32 *
1/* $NetBSD: linux_futex.h,v 1.2 2005/12/11 12:20:19 christos Exp $ */
2
3/*-
4 * Copyright (c) 2005 Emmanuel Dreyfus, all rights reserved.
5 *
6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that the following conditions
8 * are met:

--- 16 unchanged lines hidden (view full) ---

25 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
26 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
27 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
28 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
29 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
30 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
31 * POSSIBILITY OF SUCH DAMAGE.
32 *
33 * $FreeBSD: head/sys/compat/linux/linux_futex.h 177460 2008-03-20 17:03:55Z rdivacky $
33 * $FreeBSD: head/sys/compat/linux/linux_futex.h 178976 2008-05-13 20:01:27Z rdivacky $
34 */
35
36#ifndef _LINUX_FUTEX_H
37#define _LINUX_FUTEX_H
38
39#define LINUX_FUTEX_WAIT 0
40#define LINUX_FUTEX_WAKE 1
41#define LINUX_FUTEX_FD 2

--- 16 unchanged lines hidden (view full) ---

58
59#define FUTEX_OP_CMP_EQ 0 /* if (oldval == CMPARG) wake */
60#define FUTEX_OP_CMP_NE 1 /* if (oldval != CMPARG) wake */
61#define FUTEX_OP_CMP_LT 2 /* if (oldval < CMPARG) wake */
62#define FUTEX_OP_CMP_LE 3 /* if (oldval <= CMPARG) wake */
63#define FUTEX_OP_CMP_GT 4 /* if (oldval > CMPARG) wake */
64#define FUTEX_OP_CMP_GE 5 /* if (oldval >= CMPARG) wake */
65
34 */
35
36#ifndef _LINUX_FUTEX_H
37#define _LINUX_FUTEX_H
38
39#define LINUX_FUTEX_WAIT 0
40#define LINUX_FUTEX_WAKE 1
41#define LINUX_FUTEX_FD 2

--- 16 unchanged lines hidden (view full) ---

58
59#define FUTEX_OP_CMP_EQ 0 /* if (oldval == CMPARG) wake */
60#define FUTEX_OP_CMP_NE 1 /* if (oldval != CMPARG) wake */
61#define FUTEX_OP_CMP_LT 2 /* if (oldval < CMPARG) wake */
62#define FUTEX_OP_CMP_LE 3 /* if (oldval <= CMPARG) wake */
63#define FUTEX_OP_CMP_GT 4 /* if (oldval > CMPARG) wake */
64#define FUTEX_OP_CMP_GE 5 /* if (oldval >= CMPARG) wake */
65
66/* This is defined by Linux user-space */
67
68struct linux_robust_list {
69 struct linux_robust_list *next;
70};
71
72struct linux_robust_list_head {
73 struct linux_robust_list list;
74 l_ulong futex_offset;
75 struct linux_robust_list *pending_list;
76};
77
78#define FUTEX_WAITERS 0x80000000
79#define FUTEX_OWNER_DIED 0x40000000
80#define FUTEX_TID_MASK 0x3fffffff
81
82void release_futexes(struct proc *);
83
66#endif /* !_LINUX_FUTEX_H */
84#endif /* !_LINUX_FUTEX_H */