/linux/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 = &n->next; in hlist_bl_add_before() 99 WRITE_ONCE(*pprev, in hlist_bl_add_before() 101 ((uintptr_t)n | ((uintptr_t)*pprev & LIST_BL_LOCKMASK))); in hlist_bl_add_before() [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() 116 WRITE_ONCE(n->pprev, LIST_POISON2); in hlist_nulls_del()
|
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() 517 WRITE_ONCE(n->pprev, LIST_POISON2); 535 WRITE_ONCE(new->pprev, old->pprev); in hlist_replace_rcu() 536 rcu_assign_pointer(*(struct hlist_node __rcu **)new->pprev, new); 538 WRITE_ONCE(new->next->pprev, &new->next); 539 WRITE_ONCE(old->pprev, LIST_POISON2); 559 WRITE_ONCE(node2->pprev, &left->first); 560 WRITE_ONCE(node1->pprev, [all...] |
H A D | list.h | 945 h->pprev = NULL; in INIT_HLIST_NODE() 958 return !h->pprev; in hlist_unhashed() 971 return !READ_ONCE(h->pprev); in hlist_unhashed_lockless() 986 struct hlist_node **pprev = n->pprev; in __hlist_del() local 988 WRITE_ONCE(*pprev, next); in __hlist_del() 990 WRITE_ONCE(next->pprev, pprev); in __hlist_del() 1004 n->pprev = LIST_POISON2; in hlist_del() 1034 WRITE_ONCE(first->pprev, &n->next); in hlist_add_head() 1036 WRITE_ONCE(n->pprev, &h->first); in hlist_add_head() 1047 WRITE_ONCE(n->pprev, next->pprev); in hlist_add_before() [all …]
|
H A D | rculist_nulls.h | 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_bl.h | 49 n->pprev = LIST_POISON2; in hlist_bl_del_rcu() 81 first->pprev = &n->next; in hlist_bl_add_head_rcu() 82 n->pprev = &h->first; in hlist_bl_add_head_rcu()
|
H A D | rhashtable.h | 714 struct rhash_head __rcu **pprev; in __rhashtable_insert_fast() local 731 pprev = NULL; in __rhashtable_insert_fast() 750 pprev = &head->next; in __rhashtable_insert_fast() 766 if (pprev) { in __rhashtable_insert_fast() 767 rcu_assign_pointer(*pprev, obj); in __rhashtable_insert_fast() 1001 struct rhash_head __rcu **pprev; in __rhashtable_remove_fast_one() local 1011 pprev = NULL; in __rhashtable_remove_fast_one() 1022 pprev = &he->next; in __rhashtable_remove_fast_one() 1054 if (pprev) { in __rhashtable_remove_fast_one() 1055 rcu_assign_pointer(*pprev, obj); in __rhashtable_remove_fast_one() [all …]
|
/linux/tools/testing/selftests/bpf/ |
H A D | bpf_arena_list.h | 12 arena_list_node_t * __arena *pprev; member 54 WRITE_ONCE(first->pprev, tmp); in list_add_head() 62 WRITE_ONCE(n->pprev, tmp); in list_add_head() 68 arena_list_node_t * __arena *pprev = n->pprev; in __list_del() local 71 cast_kern(pprev); in __list_del() 72 tmp = *pprev; in __list_del() 76 cast_user(pprev); in __list_del() 78 WRITE_ONCE(next->pprev, pprev); in __list_del() 91 n->pprev = LIST_POISON2; in list_del()
|
/linux/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 = &tunnel6_handlers; 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 = &t->next) { in xfrm6_protocol_deregister() [all …]
|
/linux/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() argument 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, &entry)) in hashmap_delete() [all …]
|
/linux/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() argument 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, &entry)) in hashmap_delete() [all …]
|
/linux/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 = &t->next) { 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 = &t->next) { in xfrm4_protocol_deregister() [all …]
|
/linux/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 = &h->first; in hlist_add_head() 664 n->pprev = next->pprev; in hlist_add_before() 666 next->pprev = &n->next; in hlist_add_before() [all …]
|
H A D | types.h | 98 struct hlist_node *next, **pprev; member
|
/linux/kernel/ |
H A D | task_work.c | 115 struct callback_head **pprev = &task->task_works; in task_work_cancel_match() local 128 work = READ_ONCE(*pprev); in task_work_cancel_match() 131 pprev = &work->next; in task_work_cancel_match() 132 work = READ_ONCE(*pprev); in task_work_cancel_match() 133 } else if (try_cmpxchg(pprev, &work, work->next)) in task_work_cancel_match()
|
/linux/lib/ |
H A D | rhashtable.c | 236 struct rhash_head __rcu **pprev = NULL; in rhashtable_rehash_one() 253 pprev = &entry->next; in rhashtable_rehash_one() 270 if (pprev) in rhashtable_rehash_one() 271 rcu_assign_pointer(*pprev, next); in rhashtable_rehash_one() 503 struct rhash_head __rcu **pprev = NULL; in rhashtable_lookup_one() 517 pprev = &head->next; in rhashtable_lookup_one() 530 if (pprev) in rhashtable_lookup_one() 531 rcu_assign_pointer(*pprev, obj); in rhashtable_lookup_one() 232 struct rhash_head __rcu **pprev = NULL; rhashtable_rehash_one() local 499 struct rhash_head __rcu **pprev = NULL; rhashtable_lookup_one() local
|
H A D | list-test.c | 901 KUNIT_EXPECT_PTR_EQ(test, b.pprev, &list.first); in hlist_test_del_init() 917 KUNIT_EXPECT_PTR_EQ(test, b.pprev, &list.first); in hlist_test_del_init() 921 KUNIT_EXPECT_PTR_EQ(test, a.pprev, NULL); in hlist_test_add() 938 KUNIT_EXPECT_PTR_EQ(test, c.pprev, &(b.next)); in hlist_test_add() 941 KUNIT_EXPECT_PTR_EQ(test, a.pprev, &(c.next)); in hlist_test_add() 944 KUNIT_EXPECT_PTR_EQ(test, d.pprev, &(a.next));
|
/linux/scripts/include/ |
H A D | list_types.h | 14 struct hlist_node *next, **pprev; member
|
H A D | list.h | 275 h->pprev = NULL; 288 return !h->pprev; in hlist_add_head() 294 struct hlist_node **pprev = n->pprev; 296 *pprev = next; 298 next->pprev = pprev; 312 n->pprev = LIST_POISON2; 343 first->pprev = &n->next; 345 n->pprev [all...] |
/linux/tools/testing/selftests/bpf/progs/ |
H A D | btf_dump_test_case_ordering.c | 38 struct hlist_node **pprev; member
|
/linux/mm/ |
H A D | mprotect.c | 604 struct vm_area_struct *vma, struct vm_area_struct **pprev, in mprotect_fixup() 618 *pprev = vma; in mprotect_fixup() 664 vma = vma_modify_flags(vmi, *pprev, vma, start, end, newflags); in mprotect_fixup() 670 *pprev = vma; in mprotect_fixup() 582 mprotect_fixup(struct vma_iterator * vmi,struct mmu_gather * tlb,struct vm_area_struct * vma,struct vm_area_struct ** pprev,unsigned long start,unsigned long end,unsigned long newflags) mprotect_fixup() argument
|
/linux/net/sched/ |
H A D | cls_api.c | 1894 struct tcf_proto __rcu **pprev; member 1901 return tcf_chain_dereference(*chain_info->pprev, chain); in tcf_chain_tp_prev() 1912 if (*chain_info->pprev == chain->filter_chain) in tcf_chain_tp_insert() 1915 rcu_assign_pointer(*chain_info->pprev, tp); in tcf_chain_tp_insert() 1929 RCU_INIT_POINTER(*chain_info->pprev, next); in tcf_chain_tp_remove() 1982 struct tcf_proto **pprev; in tcf_chain_tp_delete_empty() local 1988 for (pprev = &chain->filter_chain; in tcf_chain_tp_delete_empty() 1989 (tp_iter = tcf_chain_dereference(*pprev, chain)); in tcf_chain_tp_delete_empty() 1990 pprev = &tp_iter->next) { in tcf_chain_tp_delete_empty() 1992 chain_info.pprev = pprev; in tcf_chain_tp_delete_empty() [all …]
|
/linux/tools/bpf/bpftool/bash-completion/ |
H A D | bpftool | 297 local i pprev 309 pprev=${words[cword - 2]} 721 case $pprev in 906 case $pprev in 920 case $pprev in 1188 elif [[ $pprev == "$command" ]]; then
|