struct_futex_q man page on OpenSuSE

Man page or keyword search:  
man Server   25941 pages
apropos Keyword Search (all sections)
Output format
OpenSuSE logo
[printable version]

STRUCT FUTEX_Q(9)	      Futex API reference	     STRUCT FUTEX_Q(9)

NAME
       struct_futex_q - The hashed futex queue entry, one per waiting task

SYNOPSIS
       struct futex_q {
	 struct plist_node list;
	 struct task_struct * task;
	 spinlock_t * lock_ptr;
	 union futex_key key;
	 struct futex_pi_state * pi_state;
	 struct rt_mutex_waiter * rt_waiter;
	 union futex_key * requeue_pi_key;
	 u32 bitset;
       };

MEMBERS
       list
	   priority-sorted list of tasks waiting on this futex

       task
	   the task waiting on the futex

       lock_ptr
	   the hash bucket lock

       key
	   the key the futex is hashed on

       pi_state
	   optional priority inheritance state

       rt_waiter
	   rt_waiter storage for use with requeue_pi

       requeue_pi_key
	   the requeue_pi target futex key

       bitset
	   bitset for the optional bitmasked wakeup

DESCRIPTION
       We use this hashed waitqueue, instead of a normal wait_queue_t, so we
       can wake only the relevant ones (hashed queues may be shared).

       A futex_q has a woken state, just like tasks have TASK_RUNNING. It is
       considered woken when plist_node_empty(q->list) || q->lock_ptr == 0.
       The order of wakeup is always to make the first condition true, then
       the second.

       PI futexes are typically woken before they are removed from the hash
       list via the rt_mutex code. See unqueue_me_pi.

AUTHOR
       Rusty Russell <rusty@rustcorp.com.au>
	   Author.

COPYRIGHT
Kernel Hackers Manual 3.11	 November 2013		     STRUCT FUTEX_Q(9)
[top]

List of man pages available for OpenSuSE

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net