/Linux-v5.15/kernel/rcu/ |
D | tree_stall.h | 31 int till_stall_check = READ_ONCE(rcu_cpu_stall_timeout); in rcu_jiffies_till_stall_check() 75 return !time_before(j, READ_ONCE(rcu_state.gp_start) + d); in rcu_gp_might_be_stalled() 147 rcu_state.n_force_qs_gpstart = READ_ONCE(rcu_state.n_force_qs); in record_gp_stall_check_time() 166 if (!READ_ONCE(rcu_kick_kthreads)) in rcu_stall_kick_kthreads() 168 j = READ_ONCE(rcu_state.jiffies_kick_kthreads); in rcu_stall_kick_kthreads() 170 (rcu_gp_in_progress() || READ_ONCE(rcu_state.gp_flags))) { in rcu_stall_kick_kthreads() 395 unsigned long j = jiffies - READ_ONCE(rcu_state.gp_activity); in rcu_is_gp_kthread_starving() 468 data_race(READ_ONCE(rcu_state.gp_flags)), in rcu_check_gp_kthread_starvation() 470 data_race(READ_ONCE(rcu_state.gp_state)), in rcu_check_gp_kthread_starvation() 471 gpk ? data_race(READ_ONCE(gpk->__state)) : ~0, cpu); in rcu_check_gp_kthread_starvation() [all …]
|
D | sync.c | 78 WARN_ON_ONCE(READ_ONCE(rsp->gp_state) == GP_IDLE); in rcu_sync_func() 79 WARN_ON_ONCE(READ_ONCE(rsp->gp_state) == GP_PASSED); in rcu_sync_func() 155 wait_event(rsp->gp_wait, READ_ONCE(rsp->gp_state) >= GP_PASSED); in rcu_sync_enter() 170 WARN_ON_ONCE(READ_ONCE(rsp->gp_state) == GP_IDLE); in rcu_sync_exit() 171 WARN_ON_ONCE(READ_ONCE(rsp->gp_count) == 0); in rcu_sync_exit() 193 WARN_ON_ONCE(READ_ONCE(rsp->gp_count)); in rcu_sync_dtor() 194 WARN_ON_ONCE(READ_ONCE(rsp->gp_state) == GP_PASSED); in rcu_sync_dtor()
|
D | tasks.h | 143 int j = READ_ONCE(i); // Prevent the compiler from reading twice in tasks_gp_state_getname() 166 if (needwake && READ_ONCE(rtp->kthread_ptr)) in call_rcu_tasks_generic() 212 READ_ONCE(rtp->cbs_head)); in rcu_tasks_kthread() 351 rtst = READ_ONCE(rcu_task_stall_timeout); in rcu_tasks_wait_gp() 443 if (t != current && READ_ONCE(t->on_rq) && !is_idle_task(t)) { in rcu_tasks_pertask() 445 t->rcu_tasks_nvcsw = READ_ONCE(t->nvcsw); in rcu_tasks_pertask() 470 if (!READ_ONCE(t->rcu_tasks_holdout) || in check_holdout_task() 471 t->rcu_tasks_nvcsw != READ_ONCE(t->nvcsw) || in check_holdout_task() 472 !READ_ONCE(t->on_rq) || in check_holdout_task() 853 int nq = READ_ONCE(t->trc_reader_special.b.need_qs); in rcu_read_unlock_trace_special() [all …]
|
D | srcutiny.c | 99 int newval = READ_ONCE(ssp->srcu_lock_nesting[idx]) - 1; in __srcu_read_unlock() 102 if (!newval && READ_ONCE(ssp->srcu_gp_waiting)) in __srcu_read_unlock() 120 if (ssp->srcu_gp_running || USHORT_CMP_GE(ssp->srcu_idx, READ_ONCE(ssp->srcu_idx_max))) in srcu_drive_gp() 133 swait_event_exclusive(ssp->srcu_wq, !READ_ONCE(ssp->srcu_lock_nesting[idx])); in srcu_drive_gp() 153 if (USHORT_CMP_LT(ssp->srcu_idx, READ_ONCE(ssp->srcu_idx_max))) in srcu_drive_gp() 163 if (USHORT_CMP_GE(READ_ONCE(ssp->srcu_idx_max), cookie)) in srcu_gp_start_if_needed() 166 if (!READ_ONCE(ssp->srcu_gp_running)) { in srcu_gp_start_if_needed() 216 ret = (READ_ONCE(ssp->srcu_idx) + 3) & ~0x1; in get_state_synchronize_srcu() 243 bool ret = USHORT_CMP_GE(READ_ONCE(ssp->srcu_idx), cookie); in poll_state_synchronize_srcu()
|
D | rcu_segcblist.h | 15 return READ_ONCE(rclp->len); in rcu_cblist_n_cbs() 43 return !READ_ONCE(rsclp->head); in rcu_segcblist_empty() 52 return READ_ONCE(rsclp->len); in rcu_segcblist_n_cbs() 71 return READ_ONCE(rsclp->flags) & flags; in rcu_segcblist_test_flags() 110 return !READ_ONCE(*READ_ONCE(rsclp->tails[seg])); in rcu_segcblist_restempty()
|
/Linux-v5.15/Documentation/translations/ko_KR/ |
D | memory-barriers.txt | 259 Q = READ_ONCE(P); D = READ_ONCE(*Q); 266 READ_ONCE() 는 메모리 배리어 명령도 내게 되어 있어서, DEC Alpha CPU 는 271 DEC Alpha 에서 수행되든 아니든, READ_ONCE() 는 컴파일러로부터의 악영향 277 a = READ_ONCE(*X); WRITE_ONCE(*X, b); 285 WRITE_ONCE(*X, c); d = READ_ONCE(*X); 296 (*) 컴파일러가 READ_ONCE() 나 WRITE_ONCE() 로 보호되지 않은 메모리 액세스를 577 리눅스 커널 v4.15 기준으로, smp_mb() 가 DEC Alpha 용 READ_ONCE() 코드에 579 전용 코드를 만드는 사람들과 READ_ONCE() 자체를 만드는 사람들 뿐임을 의미합니다. 593 Q = READ_ONCE(P); 620 Q = READ_ONCE(P); [all …]
|
/Linux-v5.15/include/net/ |
D | busy_poll.h | 41 return READ_ONCE(sk->sk_ll_usec) && !signal_pending(current); in sk_can_busy_loop() 76 unsigned long bp_usec = READ_ONCE(sysctl_net_busy_poll); in busy_loop_timeout() 92 unsigned long bp_usec = READ_ONCE(sk->sk_ll_usec); in sk_busy_loop_timeout() 107 unsigned int napi_id = READ_ONCE(sk->sk_napi_id); in sk_busy_loop() 111 READ_ONCE(sk->sk_prefer_busy_poll), in sk_busy_loop() 112 READ_ONCE(sk->sk_busy_poll_budget) ?: BUSY_POLL_BUDGET); in sk_busy_loop() 141 if (!READ_ONCE(sk->sk_napi_id)) in __sk_mark_napi_id_once()
|
/Linux-v5.15/net/mptcp/ |
D | mptcp_diag.c | 126 info->mptcpi_subflows = READ_ONCE(msk->pm.subflows); in mptcp_diag_get_info() 127 info->mptcpi_add_addr_signal = READ_ONCE(msk->pm.add_addr_signaled); in mptcp_diag_get_info() 128 info->mptcpi_add_addr_accepted = READ_ONCE(msk->pm.add_addr_accepted); in mptcp_diag_get_info() 129 info->mptcpi_local_addr_used = READ_ONCE(msk->pm.local_addr_used); in mptcp_diag_get_info() 138 if (READ_ONCE(msk->can_ack)) in mptcp_diag_get_info() 141 info->mptcpi_token = READ_ONCE(msk->token); in mptcp_diag_get_info() 142 info->mptcpi_write_seq = READ_ONCE(msk->write_seq); in mptcp_diag_get_info() 143 info->mptcpi_snd_una = READ_ONCE(msk->snd_una); in mptcp_diag_get_info() 144 info->mptcpi_rcv_nxt = READ_ONCE(msk->ack_seq); in mptcp_diag_get_info() 145 info->mptcpi_csum_enabled = READ_ONCE(msk->csum_enabled); in mptcp_diag_get_info()
|
D | pm.c | 21 u8 add_addr = READ_ONCE(msk->pm.addr_signal); in mptcp_pm_announce_addr() 46 u8 rm_addr = READ_ONCE(msk->pm.addr_signal); in mptcp_pm_remove_addr() 93 subflows_max, READ_ONCE(pm->accept_subflow)); in mptcp_pm_allow_new_subflow() 96 if (!READ_ONCE(pm->accept_subflow)) in mptcp_pm_allow_new_subflow() 100 if (READ_ONCE(pm->accept_subflow)) { in mptcp_pm_allow_new_subflow() 139 if (READ_ONCE(pm->work_pending) && in mptcp_pm_fully_established() 164 if (!READ_ONCE(pm->work_pending)) in mptcp_pm_subflow_established() 169 if (READ_ONCE(pm->work_pending)) in mptcp_pm_subflow_established() 186 READ_ONCE(pm->accept_addr)); in mptcp_pm_add_addr_received() 192 if (!READ_ONCE(pm->accept_addr)) { in mptcp_pm_add_addr_received() [all …]
|
/Linux-v5.15/arch/arm64/include/asm/ |
D | preempt.h | 12 return READ_ONCE(current_thread_info()->preempt.count); in preempt_count() 46 u32 pc = READ_ONCE(current_thread_info()->preempt.count); in __preempt_count_add() 53 u32 pc = READ_ONCE(current_thread_info()->preempt.count); in __preempt_count_sub() 61 u64 pc = READ_ONCE(ti->preempt_count); in __preempt_count_dec_and_test() 73 return !pc || !READ_ONCE(ti->preempt_count); in __preempt_count_dec_and_test() 78 u64 pc = READ_ONCE(current_thread_info()->preempt_count); in should_resched()
|
/Linux-v5.15/arch/arm64/mm/ |
D | mmu.c | 162 pte_t old_pte = READ_ONCE(*ptep); in init_pte() 171 READ_ONCE(pte_val(*ptep)))); in init_pte() 186 pmd_t pmd = READ_ONCE(*pmdp); in alloc_init_cont_pte() 198 pmd = READ_ONCE(*pmdp); in alloc_init_cont_pte() 227 pmd_t old_pmd = READ_ONCE(*pmdp); in init_pmd() 241 READ_ONCE(pmd_val(*pmdp)))); in init_pmd() 247 pmd_val(old_pmd) != READ_ONCE(pmd_val(*pmdp))); in init_pmd() 261 pud_t pud = READ_ONCE(*pudp); in alloc_init_cont_pmd() 276 pud = READ_ONCE(*pudp); in alloc_init_cont_pmd() 316 p4d_t p4d = READ_ONCE(*p4dp); in alloc_init_pud() [all …]
|
D | trans_pgd.c | 35 pte_t pte = READ_ONCE(*src_ptep); in _copy_pte() 89 if (pud_none(READ_ONCE(*dst_pudp))) { in copy_pmd() 99 pmd_t pmd = READ_ONCE(*src_pmdp); in copy_pmd() 125 if (p4d_none(READ_ONCE(*dst_p4dp))) { in copy_pud() 135 pud_t pud = READ_ONCE(*src_pudp); in copy_pud() 165 if (p4d_none(READ_ONCE(*src_p4dp))) in copy_p4d() 184 if (pgd_none(READ_ONCE(*src_pgdp))) in copy_page_tables() 240 if (pgd_none(READ_ONCE(*pgdp))) { in trans_pgd_map_page() 248 if (p4d_none(READ_ONCE(*p4dp))) { in trans_pgd_map_page() 256 if (pud_none(READ_ONCE(*pudp))) { in trans_pgd_map_page() [all …]
|
/Linux-v5.15/drivers/powercap/ |
D | idle_inject.c | 114 duration_us = READ_ONCE(ii_dev->run_duration_us); in idle_inject_timer_fn() 115 duration_us += READ_ONCE(ii_dev->idle_duration_us); in idle_inject_timer_fn() 144 play_idle_precise(READ_ONCE(ii_dev->idle_duration_us) * NSEC_PER_USEC, in idle_inject_fn() 145 READ_ONCE(ii_dev->latency_us) * NSEC_PER_USEC); in idle_inject_fn() 172 *run_duration_us = READ_ONCE(ii_dev->run_duration_us); in idle_inject_get_duration() 173 *idle_duration_us = READ_ONCE(ii_dev->idle_duration_us); in idle_inject_get_duration() 198 unsigned int idle_duration_us = READ_ONCE(ii_dev->idle_duration_us); in idle_inject_start() 199 unsigned int run_duration_us = READ_ONCE(ii_dev->run_duration_us); in idle_inject_start()
|
/Linux-v5.15/arch/s390/lib/ |
D | spinlock.c | 131 old = READ_ONCE(lp->lock); in arch_spin_lock_queued() 168 while (READ_ONCE(node->prev) != NULL) { in arch_spin_lock_queued() 182 old = READ_ONCE(lp->lock); in arch_spin_lock_queued() 202 while ((next = READ_ONCE(node->next)) == NULL) in arch_spin_lock_queued() 218 owner = arch_spin_yield_target(READ_ONCE(lp->lock), NULL); in arch_spin_lock_classic() 258 owner = READ_ONCE(lp->lock); in arch_spin_trylock_retry() 272 while (READ_ONCE(rw->cnts) & 0x10000) in arch_read_lock_wait() 284 while (READ_ONCE(rw->cnts) & 0x10000) in arch_read_lock_wait() 301 old = READ_ONCE(rw->cnts); in arch_write_lock_wait() 317 cpu = READ_ONCE(lp->lock) & _Q_LOCK_CPU_MASK; in arch_spin_relax()
|
/Linux-v5.15/tools/lib/perf/ |
D | mmap.c | 312 seq = READ_ONCE(pc->lock); in perf_mmap__read_self() 315 count->ena = READ_ONCE(pc->time_enabled); in perf_mmap__read_self() 316 count->run = READ_ONCE(pc->time_running); in perf_mmap__read_self() 320 time_mult = READ_ONCE(pc->time_mult); in perf_mmap__read_self() 321 time_shift = READ_ONCE(pc->time_shift); in perf_mmap__read_self() 322 time_offset = READ_ONCE(pc->time_offset); in perf_mmap__read_self() 325 time_cycles = READ_ONCE(pc->time_cycles); in perf_mmap__read_self() 326 time_mask = READ_ONCE(pc->time_mask); in perf_mmap__read_self() 330 idx = READ_ONCE(pc->index); in perf_mmap__read_self() 331 cnt = READ_ONCE(pc->offset); in perf_mmap__read_self() [all …]
|
/Linux-v5.15/include/linux/ |
D | srcutiny.h | 63 idx = ((READ_ONCE(ssp->srcu_idx) + 1) & 0x2) >> 1; in __srcu_read_lock() 64 WRITE_ONCE(ssp->srcu_lock_nesting[idx], READ_ONCE(ssp->srcu_lock_nesting[idx]) + 1); in __srcu_read_lock() 84 idx = ((data_race(READ_ONCE(ssp->srcu_idx)) + 1) & 0x2) >> 1; in srcu_torture_stats_print() 87 data_race(READ_ONCE(ssp->srcu_lock_nesting[!idx])), in srcu_torture_stats_print() 88 data_race(READ_ONCE(ssp->srcu_lock_nesting[idx]))); in srcu_torture_stats_print()
|
/Linux-v5.15/arch/s390/include/asm/ |
D | preempt.h | 17 return READ_ONCE(S390_lowcore.preempt_count) & ~PREEMPT_NEED_RESCHED; in preempt_count() 25 old = READ_ONCE(S390_lowcore.preempt_count); in preempt_count_set() 44 return !(READ_ONCE(S390_lowcore.preempt_count) & PREEMPT_NEED_RESCHED); in test_preempt_need_resched() 67 return unlikely(READ_ONCE(S390_lowcore.preempt_count) == in should_resched() 77 return READ_ONCE(S390_lowcore.preempt_count); in preempt_count()
|
/Linux-v5.15/drivers/net/ethernet/mellanox/mlx4/ |
D | en_port.c | 165 packets += READ_ONCE(ring->packets); in mlx4_en_fold_software_stats() 166 bytes += READ_ONCE(ring->bytes); in mlx4_en_fold_software_stats() 176 packets += READ_ONCE(ring->packets); in mlx4_en_fold_software_stats() 177 bytes += READ_ONCE(ring->bytes); in mlx4_en_fold_software_stats() 252 sw_rx_dropped += READ_ONCE(ring->dropped); in mlx4_en_DUMP_ETH_STATS() 253 priv->port_stats.rx_chksum_good += READ_ONCE(ring->csum_ok); in mlx4_en_DUMP_ETH_STATS() 254 priv->port_stats.rx_chksum_none += READ_ONCE(ring->csum_none); in mlx4_en_DUMP_ETH_STATS() 255 priv->port_stats.rx_chksum_complete += READ_ONCE(ring->csum_complete); in mlx4_en_DUMP_ETH_STATS() 256 priv->port_stats.rx_alloc_pages += READ_ONCE(ring->rx_alloc_pages); in mlx4_en_DUMP_ETH_STATS() 257 priv->xdp_stats.rx_xdp_drop += READ_ONCE(ring->xdp_drop); in mlx4_en_DUMP_ETH_STATS() [all …]
|
/Linux-v5.15/arch/s390/kernel/ |
D | idle.c | 81 idle_count = READ_ONCE(idle->idle_count); in show_idle_count() 82 if (READ_ONCE(idle->clock_idle_enter)) in show_idle_count() 98 idle_time = READ_ONCE(idle->idle_time); in show_idle_time() 99 idle_enter = READ_ONCE(idle->clock_idle_enter); in show_idle_time() 100 idle_exit = READ_ONCE(idle->clock_idle_exit); in show_idle_time() 124 idle_enter = READ_ONCE(idle->clock_idle_enter); in arch_cpu_idle_time() 125 idle_exit = READ_ONCE(idle->clock_idle_exit); in arch_cpu_idle_time()
|
/Linux-v5.15/tools/memory-model/litmus-tests/ |
D | SB+rfionceonce-poonceonces.litmus | 17 r1 = READ_ONCE(*x); 18 r2 = READ_ONCE(*y); 27 r3 = READ_ONCE(*y); 28 r4 = READ_ONCE(*x);
|
D | ISA2+poonceonces.litmus | 9 * of the smp_load_acquire() invocations are replaced by READ_ONCE()? 24 r0 = READ_ONCE(*y); 33 r0 = READ_ONCE(*z); 34 r1 = READ_ONCE(*x);
|
/Linux-v5.15/tools/memory-model/Documentation/ |
D | control-dependencies.txt | 15 q = READ_ONCE(a); 17 p = READ_ONCE(b); 25 q = READ_ONCE(a); 28 p = READ_ONCE(b); 35 q = READ_ONCE(a); 40 of ordering. But please note that neither the READ_ONCE() nor the 41 WRITE_ONCE() are optional. Without the READ_ONCE(), the compiler might 55 So don't leave out either the READ_ONCE() or the WRITE_ONCE(). 56 In particular, although READ_ONCE() does force the compiler to emit a 62 q = READ_ONCE(a); [all …]
|
/Linux-v5.15/kernel/cgroup/ |
D | misc.c | 148 if (!(valid_type(type) && cg && READ_ONCE(misc_res_capacity[type]))) in misc_cg_try_charge() 158 if (new_usage > READ_ONCE(res->max) || in misc_cg_try_charge() 159 new_usage > READ_ONCE(misc_res_capacity[type])) { in misc_cg_try_charge() 217 if (READ_ONCE(misc_res_capacity[i])) { in misc_cg_max_show() 218 max = READ_ONCE(cg->res[i].max); in misc_cg_max_show() 283 if (READ_ONCE(misc_res_capacity[type])) in misc_cg_max_write() 307 if (READ_ONCE(misc_res_capacity[i]) || usage) in misc_cg_current_show() 330 cap = READ_ONCE(misc_res_capacity[i]); in misc_cg_capacity_show()
|
/Linux-v5.15/include/clocksource/ |
D | hyperv_timer.h | 60 sequence = READ_ONCE(tsc_pg->tsc_sequence); in hv_read_tsc_page_tsc() 69 scale = READ_ONCE(tsc_pg->tsc_scale); in hv_read_tsc_page_tsc() 70 offset = READ_ONCE(tsc_pg->tsc_offset); in hv_read_tsc_page_tsc() 79 } while (READ_ONCE(tsc_pg->tsc_sequence) != sequence); in hv_read_tsc_page_tsc()
|
/Linux-v5.15/kernel/locking/ |
D | qspinlock_paravirt.h | 121 return !READ_ONCE(lock->locked) && in trylock_clear_pending() 246 if (READ_ONCE(he->lock) == lock) { in pv_unhash() 247 node = READ_ONCE(he->node); in pv_unhash() 272 return READ_ONCE(prev->state) != vcpu_running; in pv_wait_early() 302 if (READ_ONCE(node->locked)) in pv_wait_node() 322 if (!READ_ONCE(node->locked)) { in pv_wait_node() 343 !READ_ONCE(node->locked)); in pv_wait_node() 414 if (READ_ONCE(pn->state) == vcpu_hashed) in pv_wait_head_or_lock()
|