mirror of
				https://github.com/RGBCube/serenity
				synced 2025-10-31 09:52:44 +00:00 
			
		
		
		
	Kernel+LibC: Share definitions for futex.h
This commit is contained in:
		
							parent
							
								
									6fd7212476
								
							
						
					
					
						commit
						ff50122dc5
					
				
					 3 changed files with 65 additions and 83 deletions
				
			
		|  | @ -9,6 +9,7 @@ | |||
| #include <AK/DistinctNumeric.h> | ||||
| #include <AK/Types.h> | ||||
| #include <Kernel/API/POSIX/fcntl.h> | ||||
| #include <Kernel/API/POSIX/futex.h> | ||||
| #include <Kernel/API/POSIX/netinet/in.h> | ||||
| #include <Kernel/API/POSIX/signal.h> | ||||
| #include <Kernel/API/POSIX/sys/mman.h> | ||||
|  | @ -90,48 +91,6 @@ enum { | |||
| 
 | ||||
| #define FD_CLOEXEC 1 | ||||
| 
 | ||||
| #define _FUTEX_OP_SHIFT_OP 28 | ||||
| #define _FUTEX_OP_MASK_OP 0xf | ||||
| #define _FUTEX_OP_SHIFT_CMP 24 | ||||
| #define _FUTEX_OP_MASK_CMP 0xf | ||||
| #define _FUTEX_OP_SHIFT_OP_ARG 12 | ||||
| #define _FUTEX_OP_MASK_OP_ARG 0xfff | ||||
| #define _FUTEX_OP_SHIFT_CMP_ARG 0 | ||||
| #define _FUTEX_OP_MASK_CMP_ARG 0xfff | ||||
| 
 | ||||
| #define _FUTEX_OP(val3) (((val3) >> _FUTEX_OP_SHIFT_OP) & _FUTEX_OP_MASK_OP) | ||||
| #define _FUTEX_CMP(val3) (((val3) >> _FUTEX_OP_SHIFT_CMP) & _FUTEX_OP_MASK_CMP) | ||||
| #define _FUTEX_OP_ARG(val3) (((val3) >> _FUTEX_OP_SHIFT_OP_ARG) & _FUTEX_OP_MASK_OP_ARG) | ||||
| #define _FUTEX_CMP_ARG(val3) (((val3) >> _FUTEX_OP_SHIFT_CMP_ARG) & _FUTEX_OP_MASK_CMP_ARG) | ||||
| 
 | ||||
| #define FUTEX_OP_SET 0 | ||||
| #define FUTEX_OP_ADD 1 | ||||
| #define FUTEX_OP_OR 2 | ||||
| #define FUTEX_OP_ANDN 3 | ||||
| #define FUTEX_OP_XOR 4 | ||||
| #define FUTEX_OP_ARG_SHIFT 8 | ||||
| 
 | ||||
| #define FUTEX_OP_CMP_EQ 0 | ||||
| #define FUTEX_OP_CMP_NE 1 | ||||
| #define FUTEX_OP_CMP_LT 2 | ||||
| #define FUTEX_OP_CMP_LE 3 | ||||
| #define FUTEX_OP_CMP_GT 4 | ||||
| #define FUTEX_OP_CMP_GE 5 | ||||
| 
 | ||||
| #define FUTEX_WAIT 1 | ||||
| #define FUTEX_WAKE 2 | ||||
| #define FUTEX_REQUEUE 3 | ||||
| #define FUTEX_CMP_REQUEUE 4 | ||||
| #define FUTEX_WAKE_OP 5 | ||||
| #define FUTEX_WAIT_BITSET 9 | ||||
| #define FUTEX_WAKE_BITSET 10 | ||||
| 
 | ||||
| #define FUTEX_PRIVATE_FLAG (1 << 7) | ||||
| #define FUTEX_CLOCK_REALTIME (1 << 8) | ||||
| #define FUTEX_CMD_MASK ~(FUTEX_PRIVATE_FLAG | FUTEX_CLOCK_REALTIME) | ||||
| 
 | ||||
| #define FUTEX_BITSET_MATCH_ANY 0xffffffff | ||||
| 
 | ||||
| // Avoid interference with AK/Types.h and LibC/sys/types.h by defining *separate* names:
 | ||||
| TYPEDEF_DISTINCT_ORDERED_ID(pid_t, ProcessID); | ||||
| TYPEDEF_DISTINCT_ORDERED_ID(pid_t, ThreadID); | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Andreas Kling
						Andreas Kling