/usr/include/linux
NameSizeModeActions
byteorder/-0755rm
can/-0755rm
dvb/-0755rm
hdlc/-0755rm
isdn/-0755rm
netfilter/-0755rm
netfilter_arp/-0755rm
netfilter_bridge/-0755rm
netfilter_ipv4/-0755rm
netfilter_ipv6/-0755rm
nfsd/-0755rm
raid/-0755rm
spi/-0755rm
sunrpc/-0755rm
tc_act/-0755rm
tc_ematch/-0755rm
usb/-0755rm
wimax/-0755rm
a.out.h73190644editdlrm
acct.h34900644editdlrm
adb.h10770644editdlrm
adfs_fs.h8560644editdlrm
affs_hardblocks.h14810644editdlrm
agpgart.h39250644editdlrm
aio_abi.h31120644editdlrm
apm_bios.h35440644editdlrm
arcfb.h1500644editdlrm
atalk.h9270644editdlrm
atm.h78060644editdlrm
atmapi.h8890644editdlrm
atmarp.h12330644editdlrm
atmbr2684.h32080644editdlrm
atmclip.h5130644editdlrm
atmdev.h75930644editdlrm
atmioc.h15830644editdlrm
atmlec.h25610644editdlrm
atmmpc.h41630644editdlrm
atmppp.h5760644editdlrm
atmsap.h49070644editdlrm
atmsvc.h17900644editdlrm
atm_eni.h5850644editdlrm
atm_he.h3430644editdlrm
atm_idt77105.h8920644editdlrm
atm_nicstar.h12150644editdlrm
atm_tcp.h15370644editdlrm
atm_zatm.h16060644editdlrm
audit.h158800644editdlrm
auto_fs.h23460644editdlrm
auto_fs4.h41310644editdlrm
auxvec.h13840644editdlrm
ax25.h27520644editdlrm
b1lli.h16540644editdlrm
baycom.h8200644editdlrm
bfs_fs.h18300644editdlrm
binfmts.h5650644editdlrm
blkpg.h15980644editdlrm
blktrace_api.h44730644editdlrm
blk_types.h71060644editdlrm
bpqether.h9520644editdlrm
bsg.h23850644editdlrm
can.h33260644editdlrm
capability.h105890644editdlrm
capi.h30570644editdlrm
cciss_ioctl.h58240644editdlrm
cdk.h127700644editdlrm
cdrom.h281290644editdlrm
cgroupstats.h21550644editdlrm
chio.h52800644editdlrm
cm4000_cs.h17180644editdlrm
cn_proc.h27150644editdlrm
coda.h174870644editdlrm
coda_psdev.h6790644editdlrm
coff.h124130644editdlrm
comstats.h31200644editdlrm
connector.h21290644editdlrm
const.h6820644editdlrm
cramfs_fs.h29300644editdlrm
cuda.h7690644editdlrm
cyclades.h170450644editdlrm
cycx_cfm.h29260644editdlrm
dcbnl.h221200644editdlrm
dccp.h58000644editdlrm
dlm.h25290644editdlrm
dlmconstants.h50130644editdlrm
dlm_device.h24800644editdlrm
dlm_netlink.h10640644editdlrm
dlm_plock.h8060644editdlrm
dm-ioctl.h106680644editdlrm
dm-log-userspace.h151730644editdlrm
dn.h45270644editdlrm
dqblk_xfs.h69520644editdlrm
edd.h55440644editdlrm
efs_fs_sb.h21640644editdlrm
elf-em.h18340644editdlrm
elf-fdpic.h25570644editdlrm
elf.h112360644editdlrm
elfcore.h29320644editdlrm
errno.h790644editdlrm
errqueue.h4430644editdlrm
ethtool.h341660644editdlrm
eventpoll.h13530644editdlrm
ext2_fs.h188020644editdlrm
fadvise.h8550644editdlrm
falloc.h2930644editdlrm
fb.h160160644editdlrm
fcntl.h16070644editdlrm
fd.h115630644editdlrm
fdreg.h53550644editdlrm
fib_rules.h14590644editdlrm
fiemap.h25480644editdlrm
filter.h35340644editdlrm
firewire-cdev.h250530644editdlrm
firewire-constants.h19750644editdlrm
flat.h20850644editdlrm
fs.h189100644editdlrm
fuse.h114410644editdlrm
futex.h49090644editdlrm
gameport.h8160644editdlrm
generic_serial.h8950644editdlrm
genetlink.h16830644editdlrm
gen_stats.h13040644editdlrm
gfs2_ondisk.h118140644editdlrm
gigaset_dev.h9810644editdlrm
hayesesp.h2300644editdlrm
hdlc.h5740644editdlrm
hdlcdrv.h28450644editdlrm
hdreg.h226400644editdlrm
hid.h18240644editdlrm
hiddev.h62650644editdlrm
hidraw.h12170644editdlrm
hpet.h6860644editdlrm
hysdn_if.h13190644editdlrm
i2c-dev.h24030644editdlrm
i2c.h66310644editdlrm
i2o-dev.h114880644editdlrm
i8k.h14380644editdlrm
icmp.h28920644editdlrm
icmpv6.h38310644editdlrm
if.h86730644editdlrm
if_addr.h14560644editdlrm
if_addrlabel.h6580644editdlrm
if_arcnet.h37180644editdlrm
if_arp.h61090644editdlrm
if_bonding.h40760644editdlrm
if_bridge.h38100644editdlrm
if_cablemodem.h9100644editdlrm
if_ec.h9010644editdlrm
if_eql.h12840644editdlrm
if_ether.h65390644editdlrm
if_fc.h16740644editdlrm
if_fddi.h37000644editdlrm
if_frad.h29400644editdlrm
if_hippi.h41750644editdlrm
if_infiniband.h11450644editdlrm
if_link.h120780644editdlrm
if_ltalk.h1250644editdlrm
if_packet.h35300644editdlrm
if_phonet.h3370644editdlrm
if_plip.h5960644editdlrm
if_ppp.h69380644editdlrm
if_pppol2tp.h19830644editdlrm
if_pppox.h37720644editdlrm
if_slip.h8090644editdlrm
if_strip.h7000644editdlrm
if_tr.h31990644editdlrm
if_tun.h30140644editdlrm
if_tunnel.h14590644editdlrm
if_vlan.h17080644editdlrm
igmp.h29280644editdlrm
in.h92030644editdlrm
in6.h74950644editdlrm
inet_diag.h24530644editdlrm
inotify.h28380644editdlrm
input.h275940644editdlrm
in_route.h8730644editdlrm
ioctl.h1000644editdlrm
ip.h35550644editdlrm
ip6_tunnel.h10730644editdlrm
ipc.h20380644editdlrm
ipmi.h165430644editdlrm
ipmi_msgdefs.h44770644editdlrm
ipsec.h8840644editdlrm
ipv6.h28920644editdlrm
ipv6_route.h16140644editdlrm
ipx.h18240644editdlrm
ip_vs.h125830644editdlrm
irda.h76510644editdlrm
irqnr.h930644editdlrm
isdn.h56870644editdlrm
isdnif.h23060644editdlrm
isdn_divertif.h10380644editdlrm
isdn_ppp.h18590644editdlrm
iso_fs.h64390644editdlrm
ivtv.h27260644editdlrm
ivtvfb.h11430644editdlrm
ixjuser.h251160644editdlrm
jffs2.h69490644editdlrm
joystick.h35870644editdlrm
kd.h61690644editdlrm
kdev_t.h2980644editdlrm
kernel.h24570644editdlrm
kernelcapi.h9590644editdlrm
keyboard.h126950644editdlrm
keyctl.h29840644editdlrm
kvm.h206810644editdlrm
kvm_para.h5640644editdlrm
libc-compat.h35400644editdlrm
limits.h8740644editdlrm
llc.h28350644editdlrm
loop.h21890644editdlrm
lp.h37940644editdlrm
magic.h22920644editdlrm
major.h46550644editdlrm
map_to_7segment.h71870644editdlrm
matroxfb.h14290644editdlrm
mempolicy.h20520644editdlrm
meye.h25440644editdlrm
mii.h79500644editdlrm
minix_fs.h20590644editdlrm
mman.h2300644editdlrm
mmtimer.h20540644editdlrm
mqueue.h20550644editdlrm
mroute.h38130644editdlrm
mroute6.h39910644editdlrm
msdos_fs.h58390644editdlrm
msg.h25390644editdlrm
mtio.h80800644editdlrm
nbd.h19580644editdlrm
ncp.h50550644editdlrm
ncp_fs.h33540644editdlrm
ncp_mount.h21120644editdlrm
ncp_no.h6510644editdlrm
neighbour.h40600644editdlrm
net.h20210644editdlrm
netdevice.h17710644editdlrm
netfilter.h15460644editdlrm
netfilter_arp.h3800644editdlrm
netfilter_bridge.h7350644editdlrm
netfilter_decnet.h18720644editdlrm
netfilter_ipv4.h20320644editdlrm
netfilter_ipv6.h20500644editdlrm
netlink.h49690644editdlrm
netrom.h7190644editdlrm
net_dropmon.h10910644editdlrm
net_tstamp.h34680644editdlrm
nfs.h43510644editdlrm
nfs2.h14050644editdlrm
nfs3.h22070644editdlrm
nfs4.h57630644editdlrm
nfs4_mount.h18690644editdlrm
nfsacl.h5770644editdlrm
nfs_fs.h15520644editdlrm
nfs_idmap.h22380644editdlrm
nfs_mount.h32000644editdlrm
nl80211.h1923540644editdlrm
nubus.h83660644editdlrm
nvram.h4700644editdlrm
n_r3964.h23490644editdlrm
oom.h4560644editdlrm
param.h780644editdlrm
parport.h36440644editdlrm
patchkey.h8310644editdlrm
pci.h14850644editdlrm
pci_regs.h379750644editdlrm
perf_event.h218490644editdlrm
personality.h19980644editdlrm
pfkeyv2.h101470644editdlrm
pg.h22820644editdlrm
phantom.h15900644editdlrm
phonet.h43490644editdlrm
pktcdvd.h26230644editdlrm
pkt_cls.h92930644editdlrm
pkt_sched.h108870644editdlrm
pmu.h51870644editdlrm
poll.h960644editdlrm
posix_types.h12700644editdlrm
ppdev.h31470644editdlrm
ppp-comp.h65160644editdlrm
ppp_defs.h64610644editdlrm
pps.h39390644editdlrm
prctl.h49720644editdlrm
ptp_clock.h34960644editdlrm
ptrace.h22900644editdlrm
qnx4_fs.h22650644editdlrm
qnxtypes.h5610644editdlrm
quota.h57230644editdlrm
radeonfb.h2970644editdlrm
random.h10850644editdlrm
raw.h3020644editdlrm
reboot.h12800644editdlrm
reiserfs_fs.h9070644editdlrm
reiserfs_xattr.h4650644editdlrm
resource.h20870644editdlrm
rfkill.h33840644editdlrm
romfs_fs.h11270644editdlrm
rose.h21000644editdlrm
route.h22690644editdlrm
rtc.h36960644editdlrm
rtnetlink.h153350644editdlrm
scc.h45430644editdlrm
sched.h20960644editdlrm
screen_info.h22020644editdlrm
sdla.h28370644editdlrm
selinux_netlink.h11320644editdlrm
sem.h36660644editdlrm
serial.h67800644editdlrm
serial_core.h40240644editdlrm
serial_reg.h132450644editdlrm
serio.h16880644editdlrm
shm.h21870644editdlrm
signal.h1290644editdlrm
signalfd.h10960644editdlrm
smb.h12090644editdlrm
smbno.h145200644editdlrm
smb_fs.h5350644editdlrm
smb_mount.h4680644editdlrm
snmp.h111570644editdlrm
socket.h7380644editdlrm
sockios.h59670644editdlrm
som.h54800644editdlrm
sonet.h22070644editdlrm
sonypi.h51360644editdlrm
sound.h10990644editdlrm
soundcard.h460190644editdlrm
stat.h10050644editdlrm
stddef.h6330644editdlrm
string.h1750644editdlrm
suspend_ioctls.h13680644editdlrm
swab.h62920644editdlrm
synclink.h86950644editdlrm
sysctl.h264950644editdlrm
taskstats.h69470644editdlrm
tcp.h52050644editdlrm
telephony.h90510644editdlrm
termios.h5440644editdlrm
time.h17360644editdlrm
times.h2150644editdlrm
timex.h62210644editdlrm
tiocl.h16660644editdlrm
tipc.h59100644editdlrm
tipc_config.h153700644editdlrm
toshiba.h12840644editdlrm
tty.h1280644editdlrm
types.h9910644editdlrm
udf_fs_i.h6340644editdlrm
udp.h11660644editdlrm
uinput.h51250644editdlrm
uio.h6480644editdlrm
ultrasound.h44990644editdlrm
un.h2030644editdlrm
unistd.h1570644editdlrm
usbdevice_fs.h53400644editdlrm
utime.h1520644editdlrm
utsname.h6060644editdlrm
uuid.h17690644editdlrm
version.h2810644editdlrm
veth.h4740644editdlrm
vhost.h45660644editdlrm
videodev.h105130644editdlrm
videodev2.h660710644editdlrm
videotext.h42420644editdlrm
virtio_9p.h3510644editdlrm
virtio_balloon.h12550644editdlrm
virtio_blk.h29810644editdlrm
virtio_config.h12840644editdlrm
virtio_console.h14060644editdlrm
virtio_ids.h5450644editdlrm
virtio_net.h70260644editdlrm
virtio_pci.h22630644editdlrm
virtio_ring.h44890644editdlrm
virtio_rng.h2650644editdlrm
vt.h30700644editdlrm
wait.h5800644editdlrm
wanrouter.h178360644editdlrm
watchdog.h24000644editdlrm
wimax.h83700644editdlrm
wireless.h426530644editdlrm
x25.h34180644editdlrm
xattr.h6460644editdlrm
xfrm.h105580644editdlrm
Edit: /usr/include/linux/futex.h (4909B)
#ifndef _LINUX_FUTEX_H #define _LINUX_FUTEX_H #include /* Second argument to futex syscall */ #define FUTEX_WAIT 0 #define FUTEX_WAKE 1 #define FUTEX_FD 2 #define FUTEX_REQUEUE 3 #define FUTEX_CMP_REQUEUE 4 #define FUTEX_WAKE_OP 5 #define FUTEX_LOCK_PI 6 #define FUTEX_UNLOCK_PI 7 #define FUTEX_TRYLOCK_PI 8 #define FUTEX_WAIT_BITSET 9 #define FUTEX_WAKE_BITSET 10 #define FUTEX_WAIT_REQUEUE_PI 11 #define FUTEX_CMP_REQUEUE_PI 12 #define FUTEX_PRIVATE_FLAG 128 #define FUTEX_CLOCK_REALTIME 256 #define FUTEX_CMD_MASK ~(FUTEX_PRIVATE_FLAG | FUTEX_CLOCK_REALTIME) #define FUTEX_WAIT_PRIVATE (FUTEX_WAIT | FUTEX_PRIVATE_FLAG) #define FUTEX_WAKE_PRIVATE (FUTEX_WAKE | FUTEX_PRIVATE_FLAG) #define FUTEX_REQUEUE_PRIVATE (FUTEX_REQUEUE | FUTEX_PRIVATE_FLAG) #define FUTEX_CMP_REQUEUE_PRIVATE (FUTEX_CMP_REQUEUE | FUTEX_PRIVATE_FLAG) #define FUTEX_WAKE_OP_PRIVATE (FUTEX_WAKE_OP | FUTEX_PRIVATE_FLAG) #define FUTEX_LOCK_PI_PRIVATE (FUTEX_LOCK_PI | FUTEX_PRIVATE_FLAG) #define FUTEX_UNLOCK_PI_PRIVATE (FUTEX_UNLOCK_PI | FUTEX_PRIVATE_FLAG) #define FUTEX_TRYLOCK_PI_PRIVATE (FUTEX_TRYLOCK_PI | FUTEX_PRIVATE_FLAG) #define FUTEX_WAIT_BITSET_PRIVATE (FUTEX_WAIT_BITSET | FUTEX_PRIVATE_FLAG) #define FUTEX_WAKE_BITSET_PRIVATE (FUTEX_WAKE_BITSET | FUTEX_PRIVATE_FLAG) #define FUTEX_WAIT_REQUEUE_PI_PRIVATE (FUTEX_WAIT_REQUEUE_PI | \ FUTEX_PRIVATE_FLAG) #define FUTEX_CMP_REQUEUE_PI_PRIVATE (FUTEX_CMP_REQUEUE_PI | \ FUTEX_PRIVATE_FLAG) /* * Support for robust futexes: the kernel cleans up held futexes at * thread exit time. */ /* * Per-lock list entry - embedded in user-space locks, somewhere close * to the futex field. (Note: user-space uses a double-linked list to * achieve O(1) list add and remove, but the kernel only needs to know * about the forward link) * * NOTE: this structure is part of the syscall ABI, and must not be * changed. */ struct robust_list { struct robust_list *next; }; /* * Per-thread list head: * * NOTE: this structure is part of the syscall ABI, and must only be * changed if the change is first communicated with the glibc folks. * (When an incompatible change is done, we'll increase the structure * size, which glibc will detect) */ struct robust_list_head { /* * The head of the list. Points back to itself if empty: */ struct robust_list list; /* * This relative offset is set by user-space, it gives the kernel * the relative position of the futex field to examine. This way * we keep userspace flexible, to freely shape its data-structure, * without hardcoding any particular offset into the kernel: */ long futex_offset; /* * The death of the thread may race with userspace setting * up a lock's links. So to handle this race, userspace first * sets this field to the address of the to-be-taken lock, * then does the lock acquire, and then adds itself to the * list, and then clears this field. Hence the kernel will * always have full knowledge of all locks that the thread * _might_ have taken. We check the owner TID in any case, * so only truly owned locks will be handled. */ struct robust_list *list_op_pending; }; /* * Are there any waiters for this robust futex: */ #define FUTEX_WAITERS 0x80000000 /* * The kernel signals via this bit that a thread holding a futex * has exited without unlocking the futex. The kernel also does * a FUTEX_WAKE on such futexes, after setting the bit, to wake * up any possible waiters: */ #define FUTEX_OWNER_DIED 0x40000000 /* * The rest of the robust-futex field is for the TID: */ #define FUTEX_TID_MASK 0x3fffffff /* * This limit protects against a deliberately circular list. * (Not worth introducing an rlimit for it) */ #define ROBUST_LIST_LIMIT 2048 /* * bitset with all bits set for the FUTEX_xxx_BITSET OPs to request a * match of any bit. */ #define FUTEX_BITSET_MATCH_ANY 0xffffffff #define FUTEX_OP_SET 0 /* *(int *)UADDR2 = OPARG; */ #define FUTEX_OP_ADD 1 /* *(int *)UADDR2 += OPARG; */ #define FUTEX_OP_OR 2 /* *(int *)UADDR2 |= OPARG; */ #define FUTEX_OP_ANDN 3 /* *(int *)UADDR2 &= ~OPARG; */ #define FUTEX_OP_XOR 4 /* *(int *)UADDR2 ^= OPARG; */ #define FUTEX_OP_OPARG_SHIFT 8 /* Use (1 << OPARG) instead of OPARG. */ #define FUTEX_OP_CMP_EQ 0 /* if (oldval == CMPARG) wake */ #define FUTEX_OP_CMP_NE 1 /* if (oldval != CMPARG) wake */ #define FUTEX_OP_CMP_LT 2 /* if (oldval < CMPARG) wake */ #define FUTEX_OP_CMP_LE 3 /* if (oldval <= CMPARG) wake */ #define FUTEX_OP_CMP_GT 4 /* if (oldval > CMPARG) wake */ #define FUTEX_OP_CMP_GE 5 /* if (oldval >= CMPARG) wake */ /* FUTEX_WAKE_OP will perform atomically int oldval = *(int *)UADDR2; *(int *)UADDR2 = oldval OP OPARG; if (oldval CMP CMPARG) wake UADDR2; */ #define FUTEX_OP(op, oparg, cmp, cmparg) \ (((op & 0xf) << 28) | ((cmp & 0xf) << 24) \ | ((oparg & 0xfff) << 12) | (cmparg & 0xfff)) #endif