Lines Matching full:list
89 At the heart of this new approach there is a per-thread private list of
91 userspace list is registered with the kernel via a new syscall [this
93 time, the kernel checks this user-space list: are there any robust futex
96 In the common case, at do_exit() time, there is no list registered, so
98 comparison. If the thread has registered a list, then normally the list
100 way then the list might be non-empty: in this case the kernel carefully
101 walks the list [not trusting it], and marks all locks that are owned by
105 The list is guaranteed to be private and per-thread at do_exit() time,
109 list is done after the futex is acquired by glibc, there is a few
114 before it could have added itself to the list. Glibc sets this
116 it after the list-add (or list-remove) has finished.
124 Key differences of this userspace-list based approach, compared to the
129 simple 'is the list empty' op is done.
151 I have benchmarked the time needed for the kernel to process a list of 1
169 The patch adds two new syscalls: one to register the userspace list, and
170 one to query the registered list pointer::
180 List registration is very fast: the pointer is simply stored in
182 widespread, we could extend sys_clone() to register a robust-list head
210 parsing of the userspace list is robust [ ;-) ] even if the list is