| /linux/include/linux/ |
| H A D | seqlock.h | 107 * @seqcount: The real sequence counter 127 seqcount_init(&____s->seqcount); \ 149 return &s->seqcount; \ 155 return &s->seqcount; \ 161 unsigned seq = smp_load_acquire(&s->seqcount.sequence); \ 174 seq = smp_load_acquire(&s->seqcount.sequence); \ 240 .seqcount = SEQCNT_ZERO(seq_name.seqcount), \ in SEQCOUNT_LOCKNAME() 488 * only if the seqcount write serialization lock is associated, and 512 * the seqcount writ 610 seqcount_t seqcount; global() member [all...] |
| H A D | seqlock_types.h | 33 typedef struct seqcount { struct 64 seqcount_t seqcount; \ 89 seqcount_spinlock_t seqcount; member 38 dep_mapseqcount global() argument
|
| H A D | sched.h | 386 seqcount_t seqcount; member
|
| /linux/kernel/sched/ |
| H A D | cputime.c | 717 write_seqcount_begin(&vtime->seqcount); in vtime_account_kernel() 719 write_seqcount_end(&vtime->seqcount); in vtime_account_kernel() 726 write_seqcount_begin(&vtime->seqcount); in vtime_user_enter() 729 write_seqcount_end(&vtime->seqcount); in vtime_user_enter() 736 write_seqcount_begin(&vtime->seqcount); in vtime_user_exit() 743 write_seqcount_end(&vtime->seqcount); in vtime_user_exit() 756 write_seqcount_begin(&vtime->seqcount); in vtime_guest_enter() 760 write_seqcount_end(&vtime->seqcount); in vtime_guest_enter() 768 write_seqcount_begin(&vtime->seqcount); in vtime_guest_exit() 772 write_seqcount_end(&vtime->seqcount); in vtime_guest_exit() [all …]
|
| /linux/kernel/trace/ |
| H A D | pid_list.c | 143 seq = read_seqcount_begin(&pid_list->seqcount); in trace_pid_list_is_set() 151 } while (read_seqcount_retry(&pid_list->seqcount, seq)); in trace_pid_list_is_set() 184 write_seqcount_begin(&pid_list->seqcount); in trace_pid_list_set() 206 write_seqcount_end(&pid_list->seqcount); in trace_pid_list_set() 238 write_seqcount_begin(&pid_list->seqcount); in trace_pid_list_clear() 259 write_seqcount_end(&pid_list->seqcount); in trace_pid_list_clear() 350 write_seqcount_begin(&pid_list->seqcount); in pid_list_refill_irq() 353 write_seqcount_end(&pid_list->seqcount); in pid_list_refill_irq() 382 write_seqcount_begin(&pid_list->seqcount); in pid_list_refill_irq() 393 write_seqcount_end(&pid_list->seqcount); in pid_list_refill_irq() [all …]
|
| H A D | pid_list.h | 79 seqcount_raw_spinlock_t seqcount; member
|
| /linux/Documentation/filesystems/ |
| H A D | path-lookup.txt | 96 using d_seq for synchronisation (see seqcount based lookups, below). 192 no non-atomic stores to shared data), and to recheck the seqcount when we are 193 "done" with the operation. Retry or abort if the seqcount does not match. 198 protect the dentry object from disappearing, can perform a seqcount based 203 Inodes are also rcu freed, so the seqcount lookup dentry's inode may also be 216 walking is operating on each dentry. rcu-walk uses seqcount based dentry 277 It is, in some sense, a bit of a house of cards. If the seqcount check of the
|
| /linux/arch/powerpc/kvm/ |
| H A D | book3s_hv_p9_entry.c | 239 seq = curr->seqcount; in accumulate_time() 240 curr->seqcount = seq + 1; in accumulate_time() 248 curr->seqcount = seq + 2; in accumulate_time()
|
| H A D | book3s_hv.c | 2888 count = acc->seqcount; in debugfs_timings_read() 2893 if (count == acc->seqcount) { in debugfs_timings_read()
|
| /linux/init/ |
| H A D | init_task.c | 208 .vtime.seqcount = SEQCNT_ZERO(init_task.vtime_seqcount),
|
| /linux/arch/x86/kernel/ |
| H A D | tsc.c | 82 seq = this_cpu_read(cyc2ns.seq.seqcount.sequence); in __cyc2ns_read() 89 } while (unlikely(seq != this_cpu_read(cyc2ns.seq.seqcount.sequence))); in __cyc2ns_read()
|
| /linux/drivers/gpu/drm/imagination/ |
| H A D | pvr_rogue_fwif.h | 2016 #define ROGUE_FWIF_TIME_CORR_CURR_INDEX(seqcount) \ argument 2017 ((seqcount) % ROGUE_FWIF_TIME_CORR_ARRAY_SIZE)
|
| /linux/Documentation/locking/ |
| H A D | seqlock.rst | 105 stored in struct seqcount and lockdep's "lock is held" assertions are
|
| /linux/arch/powerpc/include/asm/ |
| H A D | kvm_host.h | 425 u64 seqcount; /* used to synchronize access, also count * 2 */ member
|
| /linux/arch/powerpc/kernel/ |
| H A D | asm-offsets.c | 389 OFFSET(TAS_SEQCOUNT, kvmhv_tb_accumulator, seqcount); in main()
|
| /linux/fs/ |
| H A D | namei.c | 2253 if (__read_seqcount_retry(&mount_lock.seqcount, nd->m_seq)) in handle_dots() 2255 if (__read_seqcount_retry(&rename_lock.seqcount, nd->r_seq)) in handle_dots() 2693 nd->m_seq = __read_seqcount_begin(&mount_lock.seqcount); in path_init() 2694 nd->r_seq = __read_seqcount_begin(&rename_lock.seqcount); in path_init()
|
| /linux/Documentation/gpu/ |
| H A D | drm-vm-bind-locking.rst | 89 'lock' a lot like a seqcount. However this allows multiple
|
| /linux/kernel/ |
| H A D | fork.c | 2123 seqcount_init(&p->vtime.seqcount); in copy_process()
|
| /linux/drivers/infiniband/hw/hfi1/ |
| H A D | sdma.c | 2311 (const seqcount_t *)&sde->head_lock.seqcount); in sdma_check_progress()
|