/linux/lib/ |
H A D | list_debug.c | 23 struct list_head *next) in __list_add_valid_or_report() argument 27 CHECK_DATA_CORRUPTION(next == NULL, in __list_add_valid_or_report() 28 "list_add corruption. next is NULL.\n") || in __list_add_valid_or_report() 29 CHECK_DATA_CORRUPTION(next->prev != prev, in __list_add_valid_or_report() 30 "list_add corruption. next->prev should be prev (%px), but was %px. (next=%px).\n", in __list_add_valid_or_report() 31 prev, next->prev, next) || in __list_add_valid_or_report() 32 CHECK_DATA_CORRUPTION(prev->next != next, in __list_add_valid_or_report() 33 "list_add corruption. prev->next should be next (%px), but was %px. (prev=%px).\n", in __list_add_valid_or_report() 34 next, prev->next, prev) || in __list_add_valid_or_report() 35 CHECK_DATA_CORRUPTION(new == prev || new == next, in __list_add_valid_or_report() [all …]
|
/linux/io_uring/ |
H A D | slist.h | 7 for (pos = (head)->first; pos; pos = (pos)->next) 10 for (pos = (head)->first, prv = NULL; pos; prv = pos, pos = (pos)->next) 13 for (; pos; prv = pos, pos = (pos)->next) 25 struct io_wq_work_node *next = pos->next; in wq_list_add_after() local 27 pos->next = node; in wq_list_add_after() 28 node->next = next; in wq_list_add_after() 29 if (!next) in wq_list_add_after() 36 node->next = NULL; in wq_list_add_tail() 41 list->last->next = node; in wq_list_add_tail() 49 node->next = list->first; in wq_list_add_head() [all …]
|
/linux/arch/riscv/mm/ |
H A D | kasan_init.c | 54 unsigned long next; in kasan_populate_pmd() local 64 next = pmd_addr_end(vaddr, end); in kasan_populate_pmd() 67 (next - vaddr) >= PMD_SIZE) { in kasan_populate_pmd() 76 kasan_populate_pte(pmdp, vaddr, next); in kasan_populate_pmd() 77 } while (pmdp++, vaddr = next, vaddr != end); in kasan_populate_pmd() 85 unsigned long next; in kasan_populate_pud() local 95 next = pud_addr_end(vaddr, end); in kasan_populate_pud() 98 (next - vaddr) >= PUD_SIZE) { in kasan_populate_pud() 107 kasan_populate_pmd(pudp, vaddr, next); in kasan_populate_pud() 108 } while (pudp++, vaddr = next, vaddr != end); in kasan_populate_pud() [all …]
|
/linux/tools/include/linux/ |
H A D | list.h | 15 * sometimes we already know the next/prev entries and we can 27 list->next = list; in INIT_LIST_HEAD() 35 * the prev/next entries already! 40 struct list_head *next) in __list_add() argument 42 next->prev = new; in __list_add() 43 new->next = next; in __list_add() 45 prev->next = new; in __list_add() 50 struct list_head *next); 63 __list_add(new, head, head->next); in list_add() 81 * Delete a list entry by making the prev/next entries [all …]
|
/linux/include/linux/ |
H A D | list.h | 18 * sometimes we already know the next/prev entries and we can 37 WRITE_ONCE(list->next, list); in INIT_LIST_HEAD() 55 struct list_head *next); 67 struct list_head *next) in __list_add_valid() argument 73 * With the hardening version, elide checking if next and prev in __list_add_valid() 83 if (likely(next->prev == prev && prev->next == next && new != prev && new != next)) in __list_add_valid() 88 ret &= __list_add_valid_or_report(new, prev, next); in __list_add_valid() 112 struct list_head *next = entry->next; __list_del_entry_valid() local 130 __list_add_valid(struct list_head * new,struct list_head * prev,struct list_head * next) __list_add_valid() argument 148 __list_add(struct list_head * new,struct list_head * prev,struct list_head * next) __list_add() argument 193 __list_del(struct list_head * prev,struct list_head * next) __list_del() argument 409 struct list_head *next = smp_load_acquire(&head->next); list_empty_careful() local 525 __list_splice(const struct list_head * list,struct list_head * prev,struct list_head * next) __list_splice() argument 985 struct hlist_node *next = n->next; __hlist_del() local 1045 hlist_add_before(struct hlist_node * n,struct hlist_node * next) hlist_add_before() argument [all...] |
H A D | list_bl.h | 39 struct hlist_bl_node *next, **pprev; member 46 h->next = NULL; in INIT_HLIST_BL_NODE() 82 n->next = first; in hlist_bl_add_head() 84 first->pprev = &n->next; in hlist_bl_add_head() 90 struct hlist_bl_node *next) in hlist_bl_add_before() argument 92 struct hlist_bl_node **pprev = next->pprev; in hlist_bl_add_before() 95 n->next = next; in hlist_bl_add_before() 96 next->pprev = &n->next; in hlist_bl_add_before() 107 n->next = prev->next; in hlist_bl_add_behind() 108 n->pprev = &prev->next; in hlist_bl_add_behind() [all …]
|
H A D | rculist.h | 24 WRITE_ONCE(list->next, list); in INIT_LIST_HEAD_RCU() 29 * return the ->next pointer of a list_head in an rcu safe 32 #define list_next_rcu(list) (*((struct list_head __rcu **)(&(list)->next))) 74 * the prev/next entries already! 77 struct list_head *prev, struct list_head *next) in __list_add_rcu() argument 79 if (!__list_add_valid(new, prev, next)) in __list_add_rcu() 82 new->next = next; in __list_add_rcu() 85 next->prev = new; in __list_add_rcu() 106 __list_add_rcu(new, head, head->next); in list_add_rcu() 203 new->next = old->next; in list_replace_rcu() [all …]
|
/linux/drivers/net/wireguard/ |
H A D | queueing.c | 50 #define NEXT(skb) ((skb)->prev) macro 55 NEXT(STUB(queue)) = NULL; in wg_prev_queue_init() 60 offsetof(struct sk_buff, next) != offsetof(struct prev_queue, empty.next) - in wg_prev_queue_init() 68 WRITE_ONCE(NEXT(skb), NULL); in __wg_prev_queue_enqueue() 69 WRITE_ONCE(NEXT(xchg_release(&queue->head, skb)), skb); in __wg_prev_queue_enqueue() 82 struct sk_buff *tail = queue->tail, *next = smp_load_acquire(&NEXT(tail)); in wg_prev_queue_dequeue() local 85 if (!next) in wg_prev_queue_dequeue() 87 queue->tail = next; in wg_prev_queue_dequeue() 88 tail = next; in wg_prev_queue_dequeue() 89 next = smp_load_acquire(&NEXT(next)); in wg_prev_queue_dequeue() [all …]
|
/linux/tools/usb/usbip/libsrc/ |
H A D | list.h | 14 * sometimes we already know the next/prev entries and we can 20 struct list_head *next, *prev; member 30 list->next = list; in INIT_LIST_HEAD() 38 * the prev/next entries already! 42 struct list_head *next) in __list_add() argument 44 next->prev = new; in __list_add() 45 new->next = next; in __list_add() 47 prev->next = new; in __list_add() 60 __list_add(new, head, head->next); in list_add() 64 * Delete a list entry by making the prev/next entries [all …]
|
/linux/drivers/pci/hotplug/ |
H A D | cpqphp_ctrl.c | 121 slot = slot->next; in cpqhp_find_slot() 307 if (!((*head)->next)) in sort_by_size() 314 if (((*head)->next) && in sort_by_size() 315 ((*head)->length > (*head)->next->length)) { in sort_by_size() 318 *head = (*head)->next; in sort_by_size() 319 current_res->next = (*head)->next; in sort_by_size() 320 (*head)->next = current_res; in sort_by_size() 325 while (current_res->next && current_res->next->next) { in sort_by_size() 326 if (current_res->next->length > current_res->next->next->length) { in sort_by_size() 328 next_res = current_res->next; in sort_by_size() [all …]
|
/linux/drivers/scsi/sym53c8xx_2/ |
H A D | sym_malloc.c | 64 while (!h[j].next) { in ___sym_malloc() 66 h[j].next = (m_link_p) M_GET_MEM_CLUSTER(); in ___sym_malloc() 67 if (h[j].next) in ___sym_malloc() 68 h[j].next->next = NULL; in ___sym_malloc() 74 a = h[j].next; in ___sym_malloc() 76 h[j].next = h[j].next->next; in ___sym_malloc() 80 h[j].next = (m_link_p) (a+s); in ___sym_malloc() 81 h[j].next->next = NULL; in ___sym_malloc() 120 ((m_link_p) a)->next = h[i].next; in ___sym_mfree() 121 h[i].next = (m_link_p) a; in ___sym_mfree() [all …]
|
/linux/Documentation/networking/ |
H A D | nexthop-group-resilient.rst | 4 Resilient Next-hop Groups 7 Resilient groups are a type of next-hop group that is aimed at minimizing 9 weights of constituent next hops. 12 the legacy multipath next-hop group, which uses the hash-threshold 15 To select a next hop, hash-threshold algorithm first assigns a range of 16 hashes to each next hop in the group, and then selects the next hop by 17 comparing the SKB hash with the individual ranges. When a next hop is 19 reassignment of parts of hash space from one next hop to another. RFC 2992 28 Before and after deletion of next hop 3 31 Note how next hop 2 gave up part of the hash space in favor of next hop 1, [all …]
|
/linux/drivers/memory/tegra/ |
H A D | tegra210-emc-cc-r21021.c | 78 ({ next->ptfv_list[(dev)] = \ 79 next->ptfv_list[(dev)] / \ 80 next->ptfv_list[PTFV_DVFS_SAMPLES_INDEX]; }) 86 ({ next->ptfv_list[(dev)] += \ 102 next->ptfv_list[dqs] = \ 104 (next->ptfv_list[dqs] * \ 105 next->ptfv_list[w])) / \ 106 (next->ptfv_list[w] + 1); \ 109 __stringify(dev), nval, next->ptfv_list[dqs]); \ 184 struct tegra210_emc_timing *next) in periodic_compensation_handler() argument [all …]
|
/linux/mm/kasan/ |
H A D | init.c | 113 unsigned long next; in zero_pmd_populate() 116 next = pmd_addr_end(addr, end); in zero_pmd_populate() 138 zero_pte_populate(pmd, addr, next); in zero_pmd_populate() 139 } while (pmd++, addr = next, addr != end); in zero_pmd_populate() 148 unsigned long next; in pmd_init() 151 next = pud_addr_end(addr, end); 176 zero_pmd_populate(pud, addr, next); in zero_pud_populate() 177 } while (pud++, addr = next, addr != end); in zero_pud_populate() 186 unsigned long next; in zero_pud_populate() 189 next in zero_pud_populate() 117 unsigned long next; zero_pmd_populate() local 156 unsigned long next; zero_pud_populate() local 198 unsigned long next; zero_p4d_populate() local 248 unsigned long next; kasan_populate_early_shadow() local 361 unsigned long next; kasan_remove_pte_table() local 383 unsigned long next; kasan_remove_pmd_table() local 409 unsigned long next; kasan_remove_pud_table() local 436 unsigned long next; kasan_remove_p4d_table() local 461 unsigned long addr, end, next; kasan_remove_zero_shadow() local [all...] |
/linux/net/ax25/ |
H A D | ax25_iface.c | 35 struct listen_struct *next; member 48 ap->next = protocol_list; in ax25_register_pid() 65 protocol_list = protocol->next; in ax25_protocol_release() 69 while (protocol != NULL && protocol->next != NULL) { in ax25_protocol_release() 70 if (protocol->next->pid == pid) { in ax25_protocol_release() 71 protocol->next = protocol->next->next; in ax25_protocol_release() 75 protocol = protocol->next; in ax25_protocol_release() 115 listen->next = listen_list; in ax25_listen_register() 136 listen_list = listen->next; in ax25_listen_release() 142 while (listen != NULL && listen->next != NULL) { in ax25_listen_release() [all …]
|
/linux/drivers/usb/host/ |
H A D | ohci-dbg.c | 23 #define ohci_dbg_sw(ohci, next, size, format, arg...) \ argument 25 if (next != NULL) { \ 27 s_len = scnprintf (*next, *size, format, ## arg ); \ 28 *size -= s_len; *next += s_len; \ 33 /* Version for use where "next" is the address of a local variable */ 34 #define ohci_dbg_nosw(ohci, next, size, format, arg...) \ argument 37 s_len = scnprintf(*next, *size, format, ## arg); \ 38 *size -= s_len; *next += s_len; \ 46 char **next, in ohci_dump_intr_mask() argument 49 ohci_dbg_sw (ohci, next, size, "%s 0x%08x%s%s%s%s%s%s%s%s%s\n", in ohci_dump_intr_mask() [all …]
|
/linux/drivers/gpu/drm/nouveau/nvkm/subdev/fb/ |
H A D | ramgk104.c | 210 struct nvkm_ram_data *next = ram->base.next; in r1373f4_fini() local 211 u8 v0 = next->bios.ramcfg_11_03_c0; in r1373f4_fini() 212 u8 v1 = next->bios.ramcfg_11_03_30; in r1373f4_fini() 243 u32 next = (prev & ~mask) | data; in gk104_ram_nuts() local 244 nvkm_memx_wr32(fuc->memx, addr, next); in gk104_ram_nuts() 255 struct nvkm_ram_data *next = ram->base.next; in gk104_ram_calc_gddr5() local 256 int vc = !next->bios.ramcfg_11_02_08; in gk104_ram_calc_gddr5() 257 int mv = !next->bios.ramcfg_11_02_04; in gk104_ram_calc_gddr5() 311 switch (next->bios.ramcfg_11_03_c0) { in gk104_ram_calc_gddr5() 318 switch (next->bios.ramcfg_11_03_30) { in gk104_ram_calc_gddr5() [all …]
|
/linux/drivers/md/dm-vdo/ |
H A D | funnel-queue.c | 25 queue->stub.next = NULL; in vdo_make_funnel_queue() 41 * Barrier requirements: We need a read barrier between reading a "next" field pointer in get_oldest() 46 struct funnel_queue_entry *next = READ_ONCE(oldest->next); in get_oldest() local 53 if (next == NULL) in get_oldest() 59 oldest = next; in get_oldest() 61 next = READ_ONCE(oldest->next); in get_oldest() 68 if (next == NULL) { in get_oldest() 74 * assigned previous->next. The queue is really still empty. in get_oldest() 86 next = READ_ONCE(oldest->next); in get_oldest() 87 if (next == NULL) { in get_oldest() [all …]
|
/linux/scripts/include/ |
H A D | list.h | 34 * sometimes we already know the next/prev entries and we can 53 list->next = list; in INIT_LIST_HEAD() 61 * the prev/next entries already! 65 struct list_head *next) in __list_add() argument 67 next->prev = new; in __list_add() 68 new->next = next; in __list_add() 70 prev->next = new; in __list_add() 83 __list_add(new, head, head->next); in list_add() 100 * Delete a list entry by making the prev/next entries 104 * the prev/next entries already! [all …]
|
/linux/arch/x86/mm/ |
H A D | ident_map.c | 97 unsigned long next; in ident_pud_init() local 99 for (; addr < end; addr = next) { in ident_pud_init() 104 next = (addr & PUD_MASK) + PUD_SIZE; in ident_pud_init() 105 if (next > end) in ident_pud_init() 106 next = end; in ident_pud_init() 119 use_gbpage &= ((next & ~PUD_MASK) == 0); in ident_pud_init() 134 ident_pmd_init(info, pmd, addr, next); in ident_pud_init() 140 ident_pmd_init(info, pmd, addr, next); in ident_pud_init() 150 unsigned long next; in ident_p4d_init() local 153 for (; addr < end; addr = next) { in ident_p4d_init() [all …]
|
/linux/rust/kernel/ |
H A D | list.rs | 28 /// only have one `ListArc` (for each pair of prev/next pointers), this ensures that the same 29 /// prev/next pointers are not used for several linked lists. 35 /// * All prev/next pointers in `ListLinks` fields of items in the list are valid and form a cycle. 91 /// * The returned pointer is valid until the next call to `post_remove`. 136 next: *mut ListLinksFields, field 140 /// The prev/next pointers for an item in a linked list. 168 next: ptr::null_mut(), in new() 226 next: ptr::null_mut(), in new() 267 (*item).next = item; in push_back() 271 let next in push_back() localVariable 310 let next = self.first; push_front() localVariable 548 fn next(&mut self) -> Option<ArcBorrow<'a, T>> { next() method 557 let next = unsafe { (*current).next }; next() localVariable 607 pub fn next(self) -> Option<Cursor<'a, T, ID>> { next() method 609 let next = unsafe { (*self.current).next }; next() localVariable 666 fn next(&mut self) -> Option<ListArc<T, ID>> { next() method [all...] |
/linux/tools/testing/selftests/bpf/progs/ |
H A D | test_core_read_macros.c | 13 struct callback_head___shuffled *next; member 38 /* next pointers for kernel address space have to be initialized from in handler() 41 k_probe_in.next = &k_probe_in; in handler() 42 __builtin_preserve_access_index(({k_core_in.next = &k_core_in;})); in handler() 44 k_probe_out = (long)BPF_PROBE_READ(&k_probe_in, next, next, func); in handler() 45 k_core_out = (long)BPF_CORE_READ(&k_core_in, next, next, func); in handler() 46 u_probe_out = (long)BPF_PROBE_READ_USER(u_probe_in, next, next, func); in handler() 47 u_core_out = (long)BPF_CORE_READ_USER(u_core_in, next, next, func); in handler()
|
/linux/tools/power/cpupower/lib/ |
H A D | cpufreq.c | 290 current->next = malloc(sizeof(*current)); in cpufreq_get_available_governors() 291 if (!current->next) in cpufreq_get_available_governors() 293 current = current->next; in cpufreq_get_available_governors() 301 current->next = NULL; in cpufreq_get_available_governors() 317 current = first->next; in cpufreq_get_available_governors() 328 struct cpufreq_available_governors *tmp, *next; in cpufreq_put_available_governors() local 335 next = tmp->next; in cpufreq_put_available_governors() 339 tmp = next; in cpufreq_put_available_governors() 367 current->next = malloc(sizeof(*current)); in cpufreq_get_available_frequencies() 368 if (!current->next) in cpufreq_get_available_frequencies() [all …]
|
/linux/arch/um/kernel/ |
H A D | tlb.c | 97 unsigned long next; in update_pmd_range() local 102 next = pmd_addr_end(addr, end); in update_pmd_range() 106 next - addr); in update_pmd_range() 110 else ret = update_pte_range(pmd, addr, next, ops); in update_pmd_range() 111 } while (pmd++, addr = next, ((addr < end) && !ret)); in update_pmd_range() 120 unsigned long next; in update_pud_range() local 125 next = pud_addr_end(addr, end); in update_pud_range() 129 next - addr); in update_pud_range() 133 else ret = update_pmd_range(pud, addr, next, ops); in update_pud_range() 134 } while (pud++, addr = next, ((addr < end) && !ret)); in update_pud_range() [all …]
|
/linux/tools/firewire/ |
H A D | list.h | 3 struct list *next, *prev; member 9 list->next = list; in list_init() 16 return list->next == list; in list_empty() 23 new_link->next = link; in list_insert() 24 new_link->prev->next = new_link; in list_insert() 25 new_link->next->prev = new_link; in list_insert() 37 list_insert(list->next, new_link); in list_prepend() 43 link->prev->next = link->next; in list_remove() 44 link->next->prev = link->prev; in list_remove() 51 list_entry((list)->next, type, member) [all …]
|