| /linux-6.15/include/linux/ |
| H A D | seqlock.h | 239 .seqcount = SEQCNT_ZERO(seq_name.seqcount), \ in SEQCOUNT_LOCKNAME() 610 seqcount_t seqcount; member 618 .seqcount = SEQCNT_ZERO(seq_name.seqcount), \ 877 do_write_seqcount_begin(&sl->seqcount.seqcount); in write_seqlock() 889 do_write_seqcount_end(&sl->seqcount.seqcount); in write_sequnlock() 903 do_write_seqcount_begin(&sl->seqcount.seqcount); in write_seqlock_bh() 916 do_write_seqcount_end(&sl->seqcount.seqcount); in write_sequnlock_bh() 930 do_write_seqcount_begin(&sl->seqcount.seqcount); in write_seqlock_irq() 942 do_write_seqcount_end(&sl->seqcount.seqcount); in write_sequnlock_irq() 951 do_write_seqcount_begin(&sl->seqcount.seqcount); in __write_seqlock_irqsave() [all …]
|
| H A D | seqlock_types.h | 33 typedef struct seqcount { struct 64 seqcount_t seqcount; \ 89 seqcount_spinlock_t seqcount; member
|
| H A D | sched.h | 378 seqcount_t seqcount; member
|
| /linux-6.15/kernel/sched/ |
| H A D | cputime.c | 710 write_seqcount_begin(&vtime->seqcount); in vtime_account_kernel() 712 write_seqcount_end(&vtime->seqcount); in vtime_account_kernel() 719 write_seqcount_begin(&vtime->seqcount); in vtime_user_enter() 722 write_seqcount_end(&vtime->seqcount); in vtime_user_enter() 729 write_seqcount_begin(&vtime->seqcount); in vtime_user_exit() 736 write_seqcount_end(&vtime->seqcount); in vtime_user_exit() 753 write_seqcount_end(&vtime->seqcount); in vtime_guest_enter() 765 write_seqcount_end(&vtime->seqcount); in vtime_guest_exit() 785 write_seqcount_end(&vtime->seqcount); in vtime_task_switch_generic() 798 write_seqcount_end(&vtime->seqcount); in vtime_task_switch_generic() [all …]
|
| /linux-6.15/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-6.15/init/ |
| H A D | init_task.c | 182 .vtime.seqcount = SEQCNT_ZERO(init_task.vtime_seqcount),
|
| /linux-6.15/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-6.15/arch/x86/kernel/ |
| H A D | tsc.c | 80 seq = this_cpu_read(cyc2ns.seq.seqcount.sequence); in __cyc2ns_read() 87 } while (unlikely(seq != this_cpu_read(cyc2ns.seq.seqcount.sequence))); in __cyc2ns_read()
|
| /linux-6.15/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-6.15/Documentation/locking/ |
| H A D | seqlock.rst | 103 stored in struct seqcount and lockdep's "lock is held" assertions are
|
| /linux-6.15/arch/powerpc/include/asm/ |
| H A D | kvm_host.h | 425 u64 seqcount; /* used to synchronize access, also count * 2 */ member
|
| /linux-6.15/arch/powerpc/kernel/ |
| H A D | asm-offsets.c | 388 OFFSET(TAS_SEQCOUNT, kvmhv_tb_accumulator, seqcount); in main()
|
| /linux-6.15/fs/ |
| H A D | namei.c | 2112 if (__read_seqcount_retry(&mount_lock.seqcount, nd->m_seq)) in handle_dots() 2114 if (__read_seqcount_retry(&rename_lock.seqcount, nd->r_seq)) in handle_dots() 2543 nd->m_seq = __read_seqcount_begin(&mount_lock.seqcount); in path_init() 2544 nd->r_seq = __read_seqcount_begin(&rename_lock.seqcount); in path_init()
|
| /linux-6.15/Documentation/gpu/ |
| H A D | drm-vm-bind-locking.rst | 89 'lock' a lot like a seqcount. However this allows multiple
|
| /linux-6.15/kernel/ |
| H A D | fork.c | 2333 seqcount_init(&p->vtime.seqcount); in copy_process()
|
| /linux-6.15/drivers/infiniband/hw/hfi1/ |
| H A D | sdma.c | 2328 (const seqcount_t *)&sde->head_lock.seqcount); in sdma_check_progress()
|