Home
last modified time | relevance | path

Searched refs:srcu (Results 1 – 25 of 57) sorted by relevance

123

/Linux-v5.4/tools/testing/selftests/rcutorture/formal/srcu-cbmc/
DMakefile2 all: srcu.c store_buffering
6 modified_srcu_input = $(LINUX_SOURCE)/include/linux/srcu.h \
7 $(LINUX_SOURCE)/kernel/rcu/srcu.c
9 modified_srcu_output = include/linux/srcu.h srcu.c
11 include/linux/srcu.h: srcu.c
13 srcu.c: modify_srcu.awk Makefile $(modified_srcu_input)
D.gitignore1 srcu.c
/Linux-v5.4/mm/
Dmmu_notifier.c22 DEFINE_STATIC_SRCU(srcu);
51 id = srcu_read_lock(&srcu); in __mmu_notifier_release()
76 srcu_read_unlock(&srcu, id); in __mmu_notifier_release()
87 synchronize_srcu(&srcu); in __mmu_notifier_release()
102 id = srcu_read_lock(&srcu); in __mmu_notifier_clear_flush_young()
107 srcu_read_unlock(&srcu, id); in __mmu_notifier_clear_flush_young()
119 id = srcu_read_lock(&srcu); in __mmu_notifier_clear_young()
124 srcu_read_unlock(&srcu, id); in __mmu_notifier_clear_young()
135 id = srcu_read_lock(&srcu); in __mmu_notifier_test_young()
143 srcu_read_unlock(&srcu, id); in __mmu_notifier_test_young()
[all …]
/Linux-v5.4/tools/memory-model/
Dlinux-kernel.bell38 enum SRCU = 'srcu-lock || 'srcu-unlock || 'sync-srcu
40 (* All srcu events *)
41 let Srcu = Srcu-lock | Srcu-unlock | Sync-srcu
60 let srcu-rscs = let rec
72 flag ~empty Srcu-lock \ domain(srcu-rscs) as unbalanced-srcu-locking
73 flag ~empty Srcu-unlock \ range(srcu-rscs) as unbalanced-srcu-locking
76 flag ~empty rcu-rscs & (po ; [Sync-srcu] ; po) as invalid-sleep
79 flag ~empty different-values(srcu-rscs) as srcu-bad-nesting
Dlinux-kernel.cat42 let gp = po ; [Sync-rcu | Sync-srcu] ; po?
47 let barrier = fencerel(Barrier | Rmb | Wmb | Mb | Sync-rcu | Sync-srcu |
112 let srcu-gp = [Sync-srcu]
114 let srcu-rscsi = srcu-rscs^-1
131 let rec rcu-order = rcu-gp | srcu-gp |
133 ((srcu-gp ; rcu-link ; srcu-rscsi) & loc) |
135 ((srcu-rscsi ; rcu-link ; srcu-gp) & loc) |
137 ((srcu-gp ; rcu-link ; rcu-order ; rcu-link ; srcu-rscsi) & loc) |
139 ((srcu-rscsi ; rcu-link ; rcu-order ; rcu-link ; srcu-gp) & loc) |
Dlinux-kernel.def52 srcu_read_lock(X) __srcu{srcu-lock}(X)
53 srcu_read_unlock(X,Y) { __srcu{srcu-unlock}(X,Y); }
54 synchronize_srcu(X) { __srcu{sync-srcu}(X); }
55 synchronize_srcu_expedited(X) { __srcu{sync-srcu}(X); }
/Linux-v5.4/arch/sh/kernel/
Dtraps_32.c91 unsigned char __user *srcu, *dstu; in handle_unaligned_ins() local
113 srcu = (unsigned char __user *)*rm; in handle_unaligned_ins()
114 srcu += regs->regs[0]; in handle_unaligned_ins()
121 if (ma->from(dst, srcu, count)) in handle_unaligned_ins()
164 srcu = (unsigned char __user *)*rm; in handle_unaligned_ins()
165 srcu += (instruction & 0x000F) << 2; in handle_unaligned_ins()
169 if (ma->from(dst, srcu, 4)) in handle_unaligned_ins()
175 srcu = (unsigned char __user *)*rm; in handle_unaligned_ins()
184 if (ma->from(dst, srcu, count)) in handle_unaligned_ins()
206 srcu = (unsigned char __user *)*rm; in handle_unaligned_ins()
[all …]
/Linux-v5.4/include/linux/
Dnotifier.h76 struct srcu_struct srcu; member
95 cleanup_srcu_struct(&(name)->srcu);
110 .srcu = __SRCU_STRUCT_INIT(name.srcu, pcpu), \
/Linux-v5.4/kernel/
Dnotifier.c469 synchronize_srcu(&nh->srcu); in srcu_notifier_chain_unregister()
499 idx = srcu_read_lock(&nh->srcu); in __srcu_notifier_call_chain()
501 srcu_read_unlock(&nh->srcu, idx); in __srcu_notifier_call_chain()
528 if (init_srcu_struct(&nh->srcu) < 0) in srcu_init_notifier_head()
/Linux-v5.4/arch/arm/include/asm/
Dkvm_mmu.h364 int srcu_idx = srcu_read_lock(&kvm->srcu); in kvm_read_guest_lock()
367 srcu_read_unlock(&kvm->srcu, srcu_idx); in kvm_read_guest_lock()
375 int srcu_idx = srcu_read_lock(&kvm->srcu); in kvm_write_guest_lock()
378 srcu_read_unlock(&kvm->srcu, srcu_idx); in kvm_write_guest_lock()
/Linux-v5.4/tools/testing/selftests/rcutorture/formal/srcu-cbmc/include/linux/
D.gitignore1 srcu.h
/Linux-v5.4/tools/testing/selftests/rcutorture/configs/rcu/
DSRCU-N.boot1 rcutorture.torture_type=srcu
DSRCU-t.boot1 rcutorture.torture_type=srcu
/Linux-v5.4/arch/arm64/include/asm/
Dkvm_mmu.h429 int srcu_idx = srcu_read_lock(&kvm->srcu);
432 srcu_read_unlock(&kvm->srcu, srcu_idx);
440 int srcu_idx = srcu_read_lock(&kvm->srcu);
443 srcu_read_unlock(&kvm->srcu, srcu_idx);
/Linux-v5.4/drivers/nvme/host/
Dmultipath.c269 ns = srcu_dereference(head->current_path[node], &head->srcu); in nvme_find_path()
312 srcu_idx = srcu_read_lock(&head->srcu); in nvme_ns_head_make_request()
334 srcu_read_unlock(&head->srcu, srcu_idx); in nvme_ns_head_make_request()
427 srcu_idx = srcu_read_lock(&head->srcu); in nvme_mpath_set_live()
430 srcu_read_unlock(&head->srcu, srcu_idx); in nvme_mpath_set_live()
433 synchronize_srcu(&ns->head->srcu); in nvme_mpath_set_live()
/Linux-v5.4/virt/kvm/
Dkvm_main.c392 idx = srcu_read_lock(&kvm->srcu); in kvm_mmu_notifier_change_pte()
400 srcu_read_unlock(&kvm->srcu, idx); in kvm_mmu_notifier_change_pte()
410 idx = srcu_read_lock(&kvm->srcu); in kvm_mmu_notifier_invalidate_range_start()
430 srcu_read_unlock(&kvm->srcu, idx); in kvm_mmu_notifier_invalidate_range_start()
467 idx = srcu_read_lock(&kvm->srcu); in kvm_mmu_notifier_clear_flush_young()
475 srcu_read_unlock(&kvm->srcu, idx); in kvm_mmu_notifier_clear_flush_young()
488 idx = srcu_read_lock(&kvm->srcu); in kvm_mmu_notifier_clear_young()
505 srcu_read_unlock(&kvm->srcu, idx); in kvm_mmu_notifier_clear_young()
517 idx = srcu_read_lock(&kvm->srcu); in kvm_mmu_notifier_test_young()
521 srcu_read_unlock(&kvm->srcu, idx); in kvm_mmu_notifier_test_young()
[all …]
/Linux-v5.4/drivers/gpu/drm/i915/gem/
Di915_gem_mman.c230 int srcu; in i915_gem_fault() local
248 ret = intel_gt_reset_trylock(ggtt->vm.gt, &srcu); in i915_gem_fault()
332 intel_gt_reset_unlock(ggtt->vm.gt, srcu); in i915_gem_fault()
/Linux-v5.4/arch/x86/kvm/
Dpmu.c162 filter = srcu_dereference(kvm->arch.pmu_event_filter, &kvm->srcu); in reprogram_gp_counter()
217 filter = srcu_dereference(kvm->arch.pmu_event_filter, &kvm->srcu); in reprogram_fixed_counter()
423 synchronize_srcu_expedited(&kvm->srcu); in kvm_vm_ioctl_set_pmu_event_filter()
/Linux-v5.4/drivers/pci/controller/
Dvmd.c83 struct srcu_struct srcu; member
255 synchronize_srcu(&vmdirq->irq->srcu); in vmd_msi_free()
725 idx = srcu_read_lock(&irqs->srcu); in vmd_irq()
728 srcu_read_unlock(&irqs->srcu, idx); in vmd_irq()
774 err = init_srcu_struct(&vmd->irqs[i].srcu); in vmd_probe()
802 cleanup_srcu_struct(&vmd->irqs[i].srcu); in vmd_cleanup_srcu()
/Linux-v5.4/arch/powerpc/kvm/
Dbook3s_64_mmu_hv.c441 idx = srcu_read_lock(&vcpu->kvm->srcu); in kvmppc_hv_emulate_mmio()
444 srcu_read_unlock(&vcpu->kvm->srcu, idx); in kvmppc_hv_emulate_mmio()
750 srcu_idx = srcu_read_lock(&kvm->srcu); in kvmppc_rmap_reset()
763 srcu_read_unlock(&kvm->srcu, srcu_idx); in kvmppc_rmap_reset()
1180 srcu_idx = srcu_read_lock(&kvm->srcu); in kvmppc_pin_guest_page()
1189 srcu_read_unlock(&kvm->srcu, srcu_idx); in kvmppc_pin_guest_page()
1197 srcu_read_unlock(&kvm->srcu, srcu_idx); in kvmppc_pin_guest_page()
1216 srcu_idx = srcu_read_lock(&kvm->srcu); in kvmppc_unpin_guest_page()
1220 srcu_read_unlock(&kvm->srcu, srcu_idx); in kvmppc_unpin_guest_page()
1291 int srcu_idx = srcu_read_lock(&kvm->srcu); in resize_hpt_rehash_hpte()
[all …]
Dbook3s_xive_native.c625 srcu_idx = srcu_read_lock(&kvm->srcu); in kvmppc_xive_native_set_queue_config()
629 srcu_read_unlock(&kvm->srcu, srcu_idx); in kvmppc_xive_native_set_queue_config()
636 srcu_read_unlock(&kvm->srcu, srcu_idx); in kvmppc_xive_native_set_queue_config()
642 srcu_read_unlock(&kvm->srcu, srcu_idx); in kvmppc_xive_native_set_queue_config()
885 srcu_idx = srcu_read_lock(&vcpu->kvm->srcu); in kvmppc_xive_native_vcpu_eq_sync()
887 srcu_read_unlock(&vcpu->kvm->srcu, srcu_idx); in kvmppc_xive_native_vcpu_eq_sync()
Dbook3s_64_vio.c560 idx = srcu_read_lock(&vcpu->kvm->srcu); in kvmppc_h_put_tce()
594 srcu_read_unlock(&vcpu->kvm->srcu, idx); in kvmppc_h_put_tce()
630 idx = srcu_read_lock(&vcpu->kvm->srcu); in kvmppc_h_put_tce_indirect()
691 srcu_read_unlock(&vcpu->kvm->srcu, idx); in kvmppc_h_put_tce_indirect()
/Linux-v5.4/drivers/gpu/drm/i915/gt/
Dintel_reset.h41 int __must_check intel_gt_reset_trylock(struct intel_gt *gt, int *srcu);
/Linux-v5.4/Documentation/virt/kvm/
Dlocking.txt194 Name: kvm->srcu
195 Type: srcu lock
199 Comment: The srcu read lock must be held while accessing memslots (e.g.
202 The srcu index can be stored in kvm_vcpu->srcu_idx per vcpu
/Linux-v5.4/drivers/gpu/drm/i915/gvt/
Dkvmgt.c1647 idx = srcu_read_lock(&kvm->srcu); in kvmgt_page_track_add()
1650 srcu_read_unlock(&kvm->srcu, idx); in kvmgt_page_track_add()
1664 srcu_read_unlock(&kvm->srcu, idx); in kvmgt_page_track_add()
1681 idx = srcu_read_lock(&kvm->srcu); in kvmgt_page_track_remove()
1684 srcu_read_unlock(&kvm->srcu, idx); in kvmgt_page_track_remove()
1698 srcu_read_unlock(&kvm->srcu, idx); in kvmgt_page_track_remove()
1982 idx = srcu_read_lock(&kvm->srcu); in kvmgt_rw_gpa()
1985 srcu_read_unlock(&kvm->srcu, idx); in kvmgt_rw_gpa()
2025 idx = srcu_read_lock(&kvm->srcu); in kvmgt_is_valid_gfn()
2027 srcu_read_unlock(&kvm->srcu, idx); in kvmgt_is_valid_gfn()

123