/kernel/linux/linux-5.10/include/linux/ |
H A D | list_bl.h | 39 struct hlist_bl_node *next, **pprev; member 47 h->pprev = NULL; in INIT_HLIST_BL_NODE() 54 return !h->pprev; in hlist_bl_unhashed() 84 first->pprev = &n->next; in hlist_bl_add_head() 85 n->pprev = &h->first; in hlist_bl_add_head() 92 struct hlist_bl_node **pprev = next->pprev; in hlist_bl_add_before() local 94 n->pprev = pprev; in hlist_bl_add_before() 96 next->pprev in hlist_bl_add_before() 118 struct hlist_bl_node **pprev = n->pprev; __hlist_bl_del() local [all...] |
H A D | list_nulls.h | 26 struct hlist_nulls_node *next, **pprev; member 69 return !h->pprev; in hlist_nulls_unhashed() 83 return !READ_ONCE(h->pprev); in hlist_nulls_unhashed_lockless() 97 WRITE_ONCE(n->pprev, &h->first); in hlist_nulls_add_head() 100 WRITE_ONCE(first->pprev, &n->next); in hlist_nulls_add_head() 106 struct hlist_nulls_node **pprev = n->pprev; in __hlist_nulls_del() local 108 WRITE_ONCE(*pprev, next); in __hlist_nulls_del() 110 WRITE_ONCE(next->pprev, pprev); in __hlist_nulls_del() [all...] |
H A D | rculist_nulls.h | 23 * zero the pprev pointer so list_unhashed() will return true after 37 WRITE_ONCE(n->pprev, NULL); in hlist_nulls_del_init_rcu() 77 WRITE_ONCE(n->pprev, LIST_POISON2); in hlist_nulls_del_rcu() 105 WRITE_ONCE(n->pprev, &h->first); in hlist_nulls_add_head_rcu() 108 WRITE_ONCE(first->pprev, &n->next); in hlist_nulls_add_head_rcu() 141 n->pprev = &last->next; in hlist_nulls_add_tail_rcu() 151 n->pprev = &n->next; in hlist_nulls_add_fake()
|
H A D | rculist.h | 180 * zero the pprev pointer so list_unhashed() will return true after 194 WRITE_ONCE(n->pprev, NULL); in hlist_del_init_rcu() 515 WRITE_ONCE(n->pprev, LIST_POISON2); in hlist_del_rcu() 531 WRITE_ONCE(new->pprev, old->pprev); in hlist_replace_rcu() 532 rcu_assign_pointer(*(struct hlist_node __rcu **)new->pprev, new); in hlist_replace_rcu() 534 WRITE_ONCE(new->next->pprev, &new->next); in hlist_replace_rcu() 535 WRITE_ONCE(old->pprev, LIST_POISON2); in hlist_replace_rcu() 555 WRITE_ONCE(node2->pprev, &left->first); in hlists_swap_heads_rcu() 556 WRITE_ONCE(node1->pprev, in hlists_swap_heads_rcu() [all...] |
H A D | list.h | 795 h->pprev = NULL; in INIT_HLIST_NODE() 808 return !h->pprev; in hlist_unhashed() 821 return !READ_ONCE(h->pprev); in hlist_unhashed_lockless() 836 struct hlist_node **pprev = n->pprev; in __hlist_del() local 838 WRITE_ONCE(*pprev, next); in __hlist_del() 840 WRITE_ONCE(next->pprev, pprev); in __hlist_del() 854 n->pprev = LIST_POISON2; in hlist_del() 884 WRITE_ONCE(first->pprev, in hlist_add_head() [all...] |
/kernel/linux/linux-6.6/include/linux/ |
H A D | list_bl.h | 39 struct hlist_bl_node *next, **pprev; member 47 h->pprev = NULL; in INIT_HLIST_BL_NODE() 54 return !h->pprev; in hlist_bl_unhashed() 84 first->pprev = &n->next; in hlist_bl_add_head() 85 n->pprev = &h->first; in hlist_bl_add_head() 92 struct hlist_bl_node **pprev = next->pprev; in hlist_bl_add_before() local 94 n->pprev = pprev; in hlist_bl_add_before() 96 next->pprev in hlist_bl_add_before() 118 struct hlist_bl_node **pprev = n->pprev; __hlist_bl_del() local [all...] |
H A D | list_nulls.h | 26 struct hlist_nulls_node *next, **pprev; member 69 return !h->pprev; in hlist_nulls_unhashed() 83 return !READ_ONCE(h->pprev); in hlist_nulls_unhashed_lockless() 97 WRITE_ONCE(n->pprev, &h->first); in hlist_nulls_add_head() 100 WRITE_ONCE(first->pprev, &n->next); in hlist_nulls_add_head() 106 struct hlist_nulls_node **pprev = n->pprev; in __hlist_nulls_del() local 108 WRITE_ONCE(*pprev, next); in __hlist_nulls_del() 110 WRITE_ONCE(next->pprev, pprev); in __hlist_nulls_del() [all...] |
H A D | rculist.h | 171 * zero the pprev pointer so list_unhashed() will return true after 185 WRITE_ONCE(n->pprev, NULL); in hlist_del_init_rcu() 514 WRITE_ONCE(n->pprev, LIST_POISON2); in hlist_del_rcu() 530 WRITE_ONCE(new->pprev, old->pprev); in hlist_replace_rcu() 531 rcu_assign_pointer(*(struct hlist_node __rcu **)new->pprev, new); in hlist_replace_rcu() 533 WRITE_ONCE(new->next->pprev, &new->next); in hlist_replace_rcu() 534 WRITE_ONCE(old->pprev, LIST_POISON2); in hlist_replace_rcu() 554 WRITE_ONCE(node2->pprev, &left->first); in hlists_swap_heads_rcu() 555 WRITE_ONCE(node1->pprev, in hlists_swap_heads_rcu() [all...] |
H A D | list.h | 937 h->pprev = NULL; in INIT_HLIST_NODE() 950 return !h->pprev; in hlist_unhashed() 963 return !READ_ONCE(h->pprev); in hlist_unhashed_lockless() 978 struct hlist_node **pprev = n->pprev; in __hlist_del() local 980 WRITE_ONCE(*pprev, next); in __hlist_del() 982 WRITE_ONCE(next->pprev, pprev); in __hlist_del() 996 n->pprev = LIST_POISON2; in hlist_del() 1026 WRITE_ONCE(first->pprev, in hlist_add_head() [all...] |
H A D | rculist_nulls.h | 23 * zero the pprev pointer so list_unhashed() will return true after 37 WRITE_ONCE(n->pprev, NULL); in hlist_nulls_del_init_rcu() 77 WRITE_ONCE(n->pprev, LIST_POISON2); in hlist_nulls_del_rcu() 105 WRITE_ONCE(n->pprev, &h->first); in hlist_nulls_add_head_rcu() 108 WRITE_ONCE(first->pprev, &n->next); in hlist_nulls_add_head_rcu() 141 n->pprev = &last->next; in hlist_nulls_add_tail_rcu() 151 n->pprev = &n->next; in hlist_nulls_add_fake()
|
/kernel/linux/linux-5.10/net/ipv6/ |
H A D | tunnel6.c | 34 struct xfrm6_tunnel __rcu **pprev; in xfrm6_tunnel_register() local 43 pprev = &tunnel6_handlers; in xfrm6_tunnel_register() 46 pprev = &tunnel46_handlers; in xfrm6_tunnel_register() 49 pprev = &tunnelmpls6_handlers; in xfrm6_tunnel_register() 55 for (; (t = rcu_dereference_protected(*pprev, in xfrm6_tunnel_register() 57 pprev = &t->next) { in xfrm6_tunnel_register() 64 handler->next = *pprev; in xfrm6_tunnel_register() 65 rcu_assign_pointer(*pprev, handler); in xfrm6_tunnel_register() 78 struct xfrm6_tunnel __rcu **pprev; in xfrm6_tunnel_deregister() local 86 pprev in xfrm6_tunnel_deregister() [all...] |
H A D | xfrm6_protocol.c | 236 struct xfrm6_protocol __rcu **pprev; in xfrm6_protocol_register() local 251 for (pprev = proto_handlers(protocol); in xfrm6_protocol_register() 252 (t = rcu_dereference_protected(*pprev, in xfrm6_protocol_register() 254 pprev = &t->next) { in xfrm6_protocol_register() 261 handler->next = *pprev; in xfrm6_protocol_register() 262 rcu_assign_pointer(*pprev, handler); in xfrm6_protocol_register() 283 struct xfrm6_protocol __rcu **pprev; in xfrm6_protocol_deregister() local 292 for (pprev = proto_handlers(protocol); in xfrm6_protocol_deregister() 293 (t = rcu_dereference_protected(*pprev, in xfrm6_protocol_deregister() 295 pprev in xfrm6_protocol_deregister() [all...] |
/kernel/linux/linux-6.6/net/ipv6/ |
H A D | tunnel6.c | 34 struct xfrm6_tunnel __rcu **pprev; in xfrm6_tunnel_register() local 43 pprev = &tunnel6_handlers; in xfrm6_tunnel_register() 46 pprev = &tunnel46_handlers; in xfrm6_tunnel_register() 49 pprev = &tunnelmpls6_handlers; in xfrm6_tunnel_register() 55 for (; (t = rcu_dereference_protected(*pprev, in xfrm6_tunnel_register() 57 pprev = &t->next) { in xfrm6_tunnel_register() 64 handler->next = *pprev; in xfrm6_tunnel_register() 65 rcu_assign_pointer(*pprev, handler); in xfrm6_tunnel_register() 78 struct xfrm6_tunnel __rcu **pprev; in xfrm6_tunnel_deregister() local 86 pprev in xfrm6_tunnel_deregister() [all...] |
H A D | xfrm6_protocol.c | 236 struct xfrm6_protocol __rcu **pprev; in xfrm6_protocol_register() local 251 for (pprev = proto_handlers(protocol); in xfrm6_protocol_register() 252 (t = rcu_dereference_protected(*pprev, in xfrm6_protocol_register() 254 pprev = &t->next) { in xfrm6_protocol_register() 261 handler->next = *pprev; in xfrm6_protocol_register() 262 rcu_assign_pointer(*pprev, handler); in xfrm6_protocol_register() 283 struct xfrm6_protocol __rcu **pprev; in xfrm6_protocol_deregister() local 292 for (pprev = proto_handlers(protocol); in xfrm6_protocol_deregister() 293 (t = rcu_dereference_protected(*pprev, in xfrm6_protocol_deregister() 295 pprev in xfrm6_protocol_deregister() [all...] |
/kernel/linux/linux-5.10/tools/lib/bpf/ |
H A D | hashmap.c | 24 static void hashmap_add_entry(struct hashmap_entry **pprev, in hashmap_add_entry() argument 27 entry->next = *pprev; in hashmap_add_entry() 28 *pprev = entry; in hashmap_add_entry() 31 static void hashmap_del_entry(struct hashmap_entry **pprev, in hashmap_del_entry() argument 34 *pprev = entry->next; in hashmap_del_entry() 132 struct hashmap_entry ***pprev, in hashmap_find_entry() 144 if (pprev) in hashmap_find_entry() 145 *pprev = prev_ptr; in hashmap_find_entry() 223 struct hashmap_entry **pprev, *entry; in hashmap__delete() local 227 if (!hashmap_find_entry(map, key, h, &pprev, in hashmap__delete() 130 hashmap_find_entry(const struct hashmap *map, const void *key, size_t hash, struct hashmap_entry ***pprev, struct hashmap_entry **entry) hashmap_find_entry() argument [all...] |
/kernel/linux/linux-5.10/tools/perf/util/ |
H A D | hashmap.c | 24 static void hashmap_add_entry(struct hashmap_entry **pprev, in hashmap_add_entry() argument 27 entry->next = *pprev; in hashmap_add_entry() 28 *pprev = entry; in hashmap_add_entry() 31 static void hashmap_del_entry(struct hashmap_entry **pprev, in hashmap_del_entry() argument 34 *pprev = entry->next; in hashmap_del_entry() 132 struct hashmap_entry ***pprev, in hashmap_find_entry() 144 if (pprev) in hashmap_find_entry() 145 *pprev = prev_ptr; in hashmap_find_entry() 223 struct hashmap_entry **pprev, *entry; in hashmap__delete() local 227 if (!hashmap_find_entry(map, key, h, &pprev, in hashmap__delete() 130 hashmap_find_entry(const struct hashmap *map, const void *key, size_t hash, struct hashmap_entry ***pprev, struct hashmap_entry **entry) hashmap_find_entry() argument [all...] |
/kernel/linux/linux-5.10/net/ipv4/ |
H A D | tunnel4.c | 33 struct xfrm_tunnel __rcu **pprev; in xfrm4_tunnel_register() local 41 for (pprev = fam_handlers(family); in xfrm4_tunnel_register() 42 (t = rcu_dereference_protected(*pprev, in xfrm4_tunnel_register() 44 pprev = &t->next) { in xfrm4_tunnel_register() 51 handler->next = *pprev; in xfrm4_tunnel_register() 52 rcu_assign_pointer(*pprev, handler); in xfrm4_tunnel_register() 65 struct xfrm_tunnel __rcu **pprev; in xfrm4_tunnel_deregister() local 71 for (pprev = fam_handlers(family); in xfrm4_tunnel_deregister() 72 (t = rcu_dereference_protected(*pprev, in xfrm4_tunnel_deregister() 74 pprev in xfrm4_tunnel_deregister() [all...] |
H A D | xfrm4_protocol.c | 223 struct xfrm4_protocol __rcu **pprev; in xfrm4_protocol_register() local 238 for (pprev = proto_handlers(protocol); in xfrm4_protocol_register() 239 (t = rcu_dereference_protected(*pprev, in xfrm4_protocol_register() 241 pprev = &t->next) { in xfrm4_protocol_register() 248 handler->next = *pprev; in xfrm4_protocol_register() 249 rcu_assign_pointer(*pprev, handler); in xfrm4_protocol_register() 270 struct xfrm4_protocol __rcu **pprev; in xfrm4_protocol_deregister() local 279 for (pprev = proto_handlers(protocol); in xfrm4_protocol_deregister() 280 (t = rcu_dereference_protected(*pprev, in xfrm4_protocol_deregister() 282 pprev in xfrm4_protocol_deregister() [all...] |
/kernel/linux/linux-6.6/tools/lib/bpf/ |
H A D | hashmap.c | 24 static void hashmap_add_entry(struct hashmap_entry **pprev, in hashmap_add_entry() argument 27 entry->next = *pprev; in hashmap_add_entry() 28 *pprev = entry; in hashmap_add_entry() 31 static void hashmap_del_entry(struct hashmap_entry **pprev, in hashmap_del_entry() argument 34 *pprev = entry->next; in hashmap_del_entry() 132 struct hashmap_entry ***pprev, in hashmap_find_entry() 144 if (pprev) in hashmap_find_entry() 145 *pprev = prev_ptr; in hashmap_find_entry() 223 struct hashmap_entry **pprev, *entry; in hashmap_delete() local 227 if (!hashmap_find_entry(map, key, h, &pprev, in hashmap_delete() 130 hashmap_find_entry(const struct hashmap *map, const long key, size_t hash, struct hashmap_entry ***pprev, struct hashmap_entry **entry) hashmap_find_entry() argument [all...] |
/kernel/linux/linux-6.6/tools/perf/util/ |
H A D | hashmap.c | 24 static void hashmap_add_entry(struct hashmap_entry **pprev, in hashmap_add_entry() argument 27 entry->next = *pprev; in hashmap_add_entry() 28 *pprev = entry; in hashmap_add_entry() 31 static void hashmap_del_entry(struct hashmap_entry **pprev, in hashmap_del_entry() argument 34 *pprev = entry->next; in hashmap_del_entry() 132 struct hashmap_entry ***pprev, in hashmap_find_entry() 144 if (pprev) in hashmap_find_entry() 145 *pprev = prev_ptr; in hashmap_find_entry() 223 struct hashmap_entry **pprev, *entry; in hashmap_delete() local 227 if (!hashmap_find_entry(map, key, h, &pprev, in hashmap_delete() 130 hashmap_find_entry(const struct hashmap *map, const long key, size_t hash, struct hashmap_entry ***pprev, struct hashmap_entry **entry) hashmap_find_entry() argument [all...] |
/kernel/linux/linux-6.6/net/ipv4/ |
H A D | tunnel4.c | 33 struct xfrm_tunnel __rcu **pprev; in xfrm4_tunnel_register() local 41 for (pprev = fam_handlers(family); in xfrm4_tunnel_register() 42 (t = rcu_dereference_protected(*pprev, in xfrm4_tunnel_register() 44 pprev = &t->next) { in xfrm4_tunnel_register() 51 handler->next = *pprev; in xfrm4_tunnel_register() 52 rcu_assign_pointer(*pprev, handler); in xfrm4_tunnel_register() 65 struct xfrm_tunnel __rcu **pprev; in xfrm4_tunnel_deregister() local 71 for (pprev = fam_handlers(family); in xfrm4_tunnel_deregister() 72 (t = rcu_dereference_protected(*pprev, in xfrm4_tunnel_deregister() 74 pprev in xfrm4_tunnel_deregister() [all...] |
H A D | xfrm4_protocol.c | 220 struct xfrm4_protocol __rcu **pprev; in xfrm4_protocol_register() local 235 for (pprev = proto_handlers(protocol); in xfrm4_protocol_register() 236 (t = rcu_dereference_protected(*pprev, in xfrm4_protocol_register() 238 pprev = &t->next) { in xfrm4_protocol_register() 245 handler->next = *pprev; in xfrm4_protocol_register() 246 rcu_assign_pointer(*pprev, handler); in xfrm4_protocol_register() 267 struct xfrm4_protocol __rcu **pprev; in xfrm4_protocol_deregister() local 276 for (pprev = proto_handlers(protocol); in xfrm4_protocol_deregister() 277 (t = rcu_dereference_protected(*pprev, in xfrm4_protocol_deregister() 279 pprev in xfrm4_protocol_deregister() [all...] |
/kernel/linux/linux-5.10/tools/include/linux/ |
H A D | list.h | 601 h->pprev = NULL; in INIT_HLIST_NODE() 606 return !h->pprev; in hlist_unhashed() 617 struct hlist_node **pprev = n->pprev; in __hlist_del() local 619 WRITE_ONCE(*pprev, next); in __hlist_del() 621 next->pprev = pprev; in __hlist_del() 628 n->pprev = LIST_POISON2; in hlist_del() 644 first->pprev = &n->next; in hlist_add_head() 646 n->pprev in hlist_add_head() [all...] |
/kernel/linux/linux-6.6/tools/include/linux/ |
H A D | list.h | 612 h->pprev = NULL; in INIT_HLIST_NODE() 617 return !h->pprev; in hlist_unhashed() 628 struct hlist_node **pprev = n->pprev; in __hlist_del() local 630 WRITE_ONCE(*pprev, next); in __hlist_del() 632 next->pprev = pprev; in __hlist_del() 639 n->pprev = LIST_POISON2; in hlist_del() 655 first->pprev = &n->next; in hlist_add_head() 657 n->pprev in hlist_add_head() [all...] |
/kernel/linux/linux-6.6/kernel/ |
H A D | task_work.c | 91 struct callback_head **pprev = &task->task_works; in task_work_cancel_match() local 98 * If cmpxchg() fails we continue without updating pprev. in task_work_cancel_match() 101 * we raced with task_work_run(), *pprev == NULL/exited. in task_work_cancel_match() 104 work = READ_ONCE(*pprev); in task_work_cancel_match() 107 pprev = &work->next; in task_work_cancel_match() 108 work = READ_ONCE(*pprev); in task_work_cancel_match() 109 } else if (try_cmpxchg(pprev, &work, work->next)) in task_work_cancel_match()
|