Defined in 1 files as a function:
Referenced in 6 files:
- arch/arm64/kvm/mmu.c, line 111
- arch/riscv/kvm/mmu.c, line 108
- arch/x86/kvm/mmu/mmu.c
- arch/x86/kvm/mmu/tdp_mmu.c, line 747
- fs/btrfs/extent_map.c, line 1196
- kernel/sched/core.c
Smatch caller information:
arch/x86/kvm/mmu/mmu.c __walk_slot_rmaps() -> rwlock_needbreak()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | lock | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &kvm->lock | ||
| HALF_LOCKED2 | &kvm->mmu_lock | ||
| HALF_LOCKED2 | &kvm->slots_lock |
arch/x86/kvm/mmu/mmu.c kvm_mmu_zap_memslot_pages_and_flush() -> rwlock_needbreak()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | lock | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &kvm->mmu_lock | ||
| HALF_LOCKED2 | &kvm->lock | ||
| HALF_LOCKED2 | &kvm->slots_lock | ||
| HALF_LOCKED2 | _T->lock | ||
| TYPE_LOCK | (struct kvm)->mmu_lock |
arch/x86/kvm/mmu/mmu.c kvm_recover_nx_huge_pages() -> rwlock_needbreak()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | lock | 4096-ptr_max |
| LOCK2 | &kvm->mmu_lock | ||
| LOCK2 | &kvm->srcu | ||
| LOCK2 | rcu_read | ||
| TYPE_LOCK | (struct kvm)->mmu_lock | ||
| TYPE_LOCK | (struct kvm)->srcu |
arch/x86/kvm/mmu/mmu.c mmu_sync_children() -> rwlock_needbreak()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | lock | 4096-ptr_max |
| PREEMPT_ADD | |||
| LOCK2 | &vcpu->kvm->mmu_lock | ||
| HALF_LOCKED2 | &vcpu->kvm->srcu | ||
| HALF_LOCKED2 | &vcpu->mutex | ||
| TYPE_LOCK | (struct kvm)->mmu_lock |
arch/x86/kvm/mmu/mmu.c need_topup_split_caches_or_resched() -> rwlock_needbreak()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | lock | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &kvm->arch.apic_map_lock | ||
| HALF_LOCKED2 | &kvm->arch.apicv_update_lock | ||
| HALF_LOCKED2 | &kvm->lock | ||
| HALF_LOCKED2 | &kvm->mmu_lock | ||
| HALF_LOCKED2 | &kvm->slots_lock | ||
| HALF_LOCKED2 | &kvm->srcu |
fs/btrfs/extent_map.c btrfs_scan_inode() -> rwlock_needbreak()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | lock | 4096-ptr_max |
| LOCK2 | &inode->i_mmap_lock | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct btrfs_inode)->i_mmap_lock |
arch/x86/kvm/mmu/tdp_mmu.c tdp_mmu_iter_need_resched() -> rwlock_needbreak()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | lock | 4096-ptr_max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | rcu_read | ||
| HALF_LOCKED2 | &kvm->lock | ||
| HALF_LOCKED2 | &kvm->mmu_lock | ||
| HALF_LOCKED2 | &kvm->slots_lock |
kernel/sched/core.c __cond_resched_rwlock_read() -> rwlock_needbreak()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | lock | 4096-ptr_max |
| DATA_SOURCE | 0 | lock | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &kvm->mmu_lock | ||
| HALF_LOCKED2 | &kvm->srcu | ||
| TYPE_LOCK | (struct kvm)->mmu_lock |
kernel/sched/core.c __cond_resched_rwlock_write() -> rwlock_needbreak()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | lock | 4096-ptr_max |
| DATA_SOURCE | 0 | lock | $0 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &dev_replace->lock_finishing_cancel_unmount | ||
| HALF_LOCKED2 | &dev_replace->rwsem | ||
| HALF_LOCKED2 | &fs_devices->device_list_mutex | ||
| HALF_LOCKED2 | &fs_info->chunk_mutex | ||
| HALF_LOCKED2 | &fs_info->mapping_tree_lock | ||
| HALF_LOCKED2 | &kvm->mmu_lock | ||
| HALF_LOCKED2 | &kvm->srcu | ||
| HALF_LOCKED2 | &tree->lock | ||
| HALF_LOCKED2 | &vcpu->kvm->mmu_lock | ||
| HALF_LOCKED2 | global &srcu |