/openbmc/linux/drivers/acpi/acpica/ |
H A D | exmutex.c | 45 if (obj_desc->mutex.next) { in acpi_ex_unlink_mutex() 46 (obj_desc->mutex.next)->mutex.prev = obj_desc->mutex.prev; in acpi_ex_unlink_mutex() 49 if (obj_desc->mutex.prev) { in acpi_ex_unlink_mutex() 50 (obj_desc->mutex.prev)->mutex.next = obj_desc->mutex.next; in acpi_ex_unlink_mutex() 58 (obj_desc->mutex.prev)->mutex.original_sync_level = in acpi_ex_unlink_mutex() 88 obj_desc->mutex.prev = NULL; in acpi_ex_link_mutex() 228 obj_desc->mutex.sync_level, in acpi_ex_acquire_mutex() 321 obj_desc->mutex.thread_id = 0; in acpi_ex_release_mutex_object() 496 next = obj_desc->mutex.next; in acpi_ex_release_all_mutexes() 498 obj_desc->mutex.prev = NULL; in acpi_ex_release_all_mutexes() [all …]
|
H A D | dsmethod.c | 345 obj_desc->method.mutex->mutex.sync_level)) { in acpi_ds_begin_method_execution() 360 !obj_desc->method.mutex->mutex.thread_id || in acpi_ds_begin_method_execution() 362 obj_desc->method.mutex->mutex.thread_id)) { in acpi_ds_begin_method_execution() 378 obj_desc->method.mutex->mutex. in acpi_ds_begin_method_execution() 382 obj_desc->method.mutex->mutex.thread_id = in acpi_ds_begin_method_execution() 398 obj_desc->method.mutex->mutex. in acpi_ds_begin_method_execution() 400 obj_desc->method.mutex->mutex.sync_level; in acpi_ds_begin_method_execution() 402 obj_desc->method.mutex->mutex.thread_id = in acpi_ds_begin_method_execution() 409 obj_desc->method.mutex->mutex.acquisition_depth++; in acpi_ds_begin_method_execution() 765 method_desc->method.mutex->mutex. in acpi_ds_terminate_control_method() [all …]
|
/openbmc/qemu/util/ |
H A D | qemu-coroutine-lock.c | 164 move_waiters(mutex); in pop_waiter() 176 return QSLIST_EMPTY(&mutex->to_pop) || QSLIST_EMPTY(&mutex->from_push); in has_waiters() 181 memset(mutex, 0, sizeof(*mutex)); in qemu_co_mutex_init() 190 mutex->ctx = co->ctx; in qemu_co_mutex_wake() 202 push_waiter(mutex, &w); in qemu_co_mutex_lock_slowpath() 215 has_waiters(mutex) && in qemu_co_mutex_lock_slowpath() 268 mutex->ctx = ctx; in qemu_co_mutex_lock() 272 mutex->holder = self; in qemu_co_mutex_lock() 282 assert(mutex->locked); in qemu_co_mutex_unlock() 286 mutex->ctx = NULL; in qemu_co_mutex_unlock() [all …]
|
H A D | qemu-thread-common.h | 19 static inline void qemu_mutex_post_init(QemuMutex *mutex) in qemu_mutex_post_init() argument 22 mutex->file = NULL; in qemu_mutex_post_init() 23 mutex->line = 0; in qemu_mutex_post_init() 25 mutex->initialized = true; in qemu_mutex_post_init() 31 trace_qemu_mutex_lock(mutex, file, line); in qemu_mutex_pre_lock() 38 mutex->file = file; in qemu_mutex_post_lock() 39 mutex->line = line; in qemu_mutex_post_lock() 41 trace_qemu_mutex_locked(mutex, file, line); in qemu_mutex_post_lock() 48 mutex->file = NULL; in qemu_mutex_pre_unlock() 49 mutex->line = 0; in qemu_mutex_pre_unlock() [all …]
|
H A D | qemu-thread-win32.c | 71 qemu_mutex_post_init(mutex); in qemu_mutex_init() 76 assert(mutex->initialized); in qemu_mutex_destroy() 77 mutex->initialized = false; in qemu_mutex_destroy() 83 assert(mutex->initialized); in qemu_mutex_lock_impl() 93 assert(mutex->initialized); in qemu_mutex_trylock_impl() 104 assert(mutex->initialized); in qemu_mutex_unlock_impl() 112 mutex->initialized = true; in qemu_rec_mutex_init() 117 assert(mutex->initialized); in qemu_rec_mutex_destroy() 118 mutex->initialized = false; in qemu_rec_mutex_destroy() 124 assert(mutex->initialized); in qemu_rec_mutex_lock_impl() [all …]
|
H A D | qemu-thread-posix.c | 74 qemu_mutex_post_init(mutex); in qemu_mutex_init() 81 assert(mutex->initialized); in qemu_mutex_destroy() 82 mutex->initialized = false; in qemu_mutex_destroy() 92 assert(mutex->initialized); in qemu_mutex_lock_impl() 104 assert(mutex->initialized); in qemu_mutex_trylock_impl() 120 assert(mutex->initialized); in qemu_mutex_unlock_impl() 139 mutex->m.initialized = true; in qemu_rec_mutex_init() 144 qemu_mutex_destroy(&mutex->m); in qemu_rec_mutex_destroy() 258 qemu_mutex_init(&sem->mutex); in qemu_sem_init() 275 qemu_mutex_lock(&sem->mutex); in qemu_sem_post() [all …]
|
/openbmc/linux/drivers/net/ethernet/netronome/nfp/nfpcore/ |
H A D | nfp_mutex.c | 143 mutex = kzalloc(sizeof(*mutex), GFP_KERNEL); in nfp_cpp_mutex_alloc() 144 if (!mutex) in nfp_cpp_mutex_alloc() 147 mutex->cpp = cpp; in nfp_cpp_mutex_alloc() 150 mutex->key = key; in nfp_cpp_mutex_alloc() 151 mutex->depth = 0; in nfp_cpp_mutex_alloc() 153 return mutex; in nfp_cpp_mutex_alloc() 162 kfree(mutex); in nfp_cpp_mutex_free() 200 mutex->target, mutex->address, mutex->key); in nfp_cpp_mutex_lock() 229 mutex->depth--; in nfp_cpp_mutex_unlock() 233 err = nfp_cpp_readl(mutex->cpp, mur, mutex->address + 4, &key); in nfp_cpp_mutex_unlock() [all …]
|
/openbmc/linux/include/linux/ |
H A D | mutex.h | 64 struct mutex { struct 102 #define mutex_init(mutex) \ argument 106 __mutex_init((mutex), #mutex, &__key); \ 136 struct mutex { struct 160 #define __mutex_init(mutex, name, key) \ argument 162 rt_mutex_base_init(&(mutex)->rtmutex); \ 163 __mutex_rt_init((mutex), name, key); \ 166 #define mutex_init(mutex) \ argument 170 __mutex_init((mutex), #mutex, &__key); \ 223 DEFINE_GUARD(mutex, struct mutex *, mutex_lock(_T), mutex_unlock(_T)) [all …]
|
/openbmc/linux/drivers/gpu/drm/amd/pm/ |
H A D | amdgpu_dpm.c | 49 mutex_lock(&adev->pm.mutex); in amdgpu_dpm_get_sclk() 52 mutex_unlock(&adev->pm.mutex); in amdgpu_dpm_get_sclk() 65 mutex_lock(&adev->pm.mutex); in amdgpu_dpm_get_mclk() 68 mutex_unlock(&adev->pm.mutex); in amdgpu_dpm_get_mclk() 85 mutex_lock(&adev->pm.mutex); in amdgpu_dpm_set_powergating_by_smu() 117 mutex_lock(&adev->pm.mutex); in amdgpu_dpm_set_gfx_power_up_by_imu() 135 mutex_lock(&adev->pm.mutex); in amdgpu_dpm_baco_enter() 154 mutex_lock(&adev->pm.mutex); in amdgpu_dpm_baco_exit() 204 mutex_lock(&adev->pm.mutex); in amdgpu_dpm_is_baco_supported() 223 mutex_lock(&adev->pm.mutex); in amdgpu_dpm_mode2_reset() [all …]
|
/openbmc/linux/drivers/soc/mediatek/ |
H A D | mtk-mutex.c | 734 mutex[mutex->id]); in mtk_mutex_put() 736 WARN_ON(&mtx->mutex[mutex->id] != mutex); in mtk_mutex_put() 745 mutex[mutex->id]); in mtk_mutex_prepare() 753 mutex[mutex->id]); in mtk_mutex_unprepare() 767 WARN_ON(&mtx->mutex[mutex->id] != mutex); in mtk_mutex_add_comp() 824 WARN_ON(&mtx->mutex[mutex->id] != mutex); in mtk_mutex_remove_comp() 863 WARN_ON(&mtx->mutex[mutex->id] != mutex); in mtk_mutex_enable() 875 WARN_ON(&mtx->mutex[mutex->id] != mutex); in mtk_mutex_enable_by_cmdq() 893 WARN_ON(&mtx->mutex[mutex->id] != mutex); in mtk_mutex_disable() 930 WARN_ON(&mtx->mutex[mutex->id] != mutex); in mtk_mutex_write_mod() [all …]
|
/openbmc/qemu/include/qemu/ |
H A D | thread.h | 26 void qemu_mutex_init(QemuMutex *mutex); 27 void qemu_mutex_destroy(QemuMutex *mutex); 114 #define qemu_mutex_unlock(mutex) \ argument 117 #define qemu_rec_mutex_unlock(mutex) \ argument 122 qemu_mutex_lock(mutex); 127 return qemu_mutex_trylock(mutex); 132 qemu_mutex_unlock(mutex); 137 qemu_rec_mutex_lock(mutex); 147 qemu_rec_mutex_unlock(mutex); 167 qemu_cond_wait(cond, mutex); [all …]
|
/openbmc/linux/Documentation/devicetree/bindings/soc/mediatek/ |
H A D | mediatek,mutex.yaml | 7 title: Mediatek mutex 27 - mediatek,mt2701-disp-mutex 28 - mediatek,mt2712-disp-mutex 29 - mediatek,mt6795-disp-mutex 30 - mediatek,mt8167-disp-mutex 31 - mediatek,mt8173-disp-mutex 32 - mediatek,mt8183-disp-mutex 33 - mediatek,mt8186-disp-mutex 34 - mediatek,mt8186-mdp3-mutex 38 - mediatek,mt8195-vpp-mutex [all …]
|
/openbmc/linux/Documentation/translations/zh_CN/locking/ |
H A D | mutex-design.rst | 4 :Original: Documentation/locking/mutex-design.rst 25 在Linux内核中,互斥锁(mutex)指的是一个特殊的加锁原语,它在共享内存系统上 36 互斥锁由“struct mutex”表示,在include/linux/mutex.h中定义,并在 37 kernel/locking/mutex.c中实现。这些锁使用一个原子变量(->owner)来跟踪 107 mutex_init(mutex); 111 void mutex_lock(struct mutex *lock); 113 int mutex_trylock(struct mutex *lock); 119 int mutex_lock_interruptible(struct mutex *lock); 127 void mutex_unlock(struct mutex *lock); 131 int mutex_is_locked(struct mutex *lock); [all …]
|
/openbmc/linux/include/linux/soc/mediatek/ |
H A D | mtk-mutex.h | 71 int mtk_mutex_prepare(struct mtk_mutex *mutex); 72 void mtk_mutex_add_comp(struct mtk_mutex *mutex, 74 void mtk_mutex_enable(struct mtk_mutex *mutex); 77 void mtk_mutex_disable(struct mtk_mutex *mutex); 78 void mtk_mutex_remove_comp(struct mtk_mutex *mutex, 80 void mtk_mutex_unprepare(struct mtk_mutex *mutex); 81 void mtk_mutex_put(struct mtk_mutex *mutex); 82 void mtk_mutex_acquire(struct mtk_mutex *mutex); 83 void mtk_mutex_release(struct mtk_mutex *mutex); 84 int mtk_mutex_write_mod(struct mtk_mutex *mutex, [all …]
|
/openbmc/linux/kernel/locking/ |
H A D | mutex.c | 89 bool mutex_is_locked(struct mutex *lock) in mutex_is_locked() 150 static inline bool __mutex_trylock(struct mutex *lock) in __mutex_trylock() 281 void __sched mutex_lock(struct mutex *lock) in mutex_lock() 537 void __sched mutex_unlock(struct mutex *lock) in mutex_unlock() 960 __mutex_lock_killable_slowpath(struct mutex *lock); 1001 int __sched mutex_lock_killable(struct mutex *lock) in mutex_lock_killable() 1022 void __sched mutex_lock_io(struct mutex *lock) in mutex_lock_io() 1033 __mutex_lock_slowpath(struct mutex *lock) in __mutex_lock_slowpath() 1039 __mutex_lock_killable_slowpath(struct mutex *lock) in __mutex_lock_killable_slowpath() 1045 __mutex_lock_interruptible_slowpath(struct mutex *lock) in __mutex_lock_interruptible_slowpath() [all …]
|
/openbmc/linux/drivers/vhost/ |
H A D | test.c | 51 mutex_lock(&vq->mutex); in handle_vq() 54 mutex_unlock(&vq->mutex); in handle_vq() 93 mutex_unlock(&vq->mutex); in handle_vq() 135 mutex_lock(&vq->mutex); in vhost_test_stop_vq() 138 mutex_unlock(&vq->mutex); in vhost_test_stop_vq() 190 mutex_lock(&vq->mutex); in vhost_test_run() 252 mutex_lock(&vq->mutex); in vhost_test_set_features() 254 mutex_unlock(&vq->mutex); in vhost_test_set_features() 277 mutex_lock(&vq->mutex); in vhost_test_set_backend() 295 mutex_unlock(&vq->mutex); in vhost_test_set_backend() [all …]
|
/openbmc/linux/drivers/net/wireless/realtek/rtw89/ |
H A D | mac80211.c | 62 mutex_lock(&rtwdev->mutex); in rtw89_ops_start() 64 mutex_unlock(&rtwdev->mutex); in rtw89_ops_start() 73 mutex_lock(&rtwdev->mutex); in rtw89_ops_stop() 75 mutex_unlock(&rtwdev->mutex); in rtw89_ops_stop() 85 mutex_lock(&rtwdev->mutex); in rtw89_ops_config() 103 mutex_unlock(&rtwdev->mutex); in rtw89_ops_config() 118 mutex_lock(&rtwdev->mutex); in rtw89_ops_add_interface() 183 mutex_lock(&rtwdev->mutex); in rtw89_ops_remove_interface() 229 mutex_lock(&rtwdev->mutex); in rtw89_ops_configure_filter() 408 mutex_lock(&rtwdev->mutex); in rtw89_ops_bss_info_changed() [all …]
|
/openbmc/linux/Documentation/devicetree/bindings/hwlock/ |
H A D | qcom-hwspinlock.yaml | 20 - qcom,sfpb-mutex 21 - qcom,tcsr-mutex 24 - qcom,apq8084-tcsr-mutex 25 - qcom,ipq6018-tcsr-mutex 26 - qcom,msm8226-tcsr-mutex 27 - qcom,msm8994-tcsr-mutex 28 - const: qcom,tcsr-mutex 31 - qcom,msm8974-tcsr-mutex 32 - const: qcom,tcsr-mutex 51 compatible = "qcom,tcsr-mutex";
|
/openbmc/linux/drivers/gpu/drm/i915/ |
H A D | intel_wakeref.h | 38 struct mutex mutex; member 49 struct lock_class_key mutex; member 130 might_lock(&wf->mutex); in intel_wakeref_might_get() 181 might_lock(&wf->mutex); in intel_wakeref_might_put() 194 __acquires(wf->mutex) in intel_wakeref_lock() 196 mutex_lock(&wf->mutex); in intel_wakeref_lock() 207 __releases(wf->mutex) in intel_wakeref_unlock() 209 mutex_unlock(&wf->mutex); in intel_wakeref_unlock() 222 mutex_lock(&wf->mutex); in intel_wakeref_unlock_wait() 223 mutex_unlock(&wf->mutex); in intel_wakeref_unlock_wait() [all …]
|
/openbmc/linux/drivers/net/wireless/realtek/rtw88/ |
H A D | mac80211.c | 58 mutex_lock(&rtwdev->mutex); in rtw_ops_start() 60 mutex_unlock(&rtwdev->mutex); in rtw_ops_start() 69 mutex_lock(&rtwdev->mutex); in rtw_ops_stop() 71 mutex_unlock(&rtwdev->mutex); in rtw_ops_stop() 82 mutex_lock(&rtwdev->mutex); in rtw_ops_config() 104 mutex_unlock(&rtwdev->mutex); in rtw_ops_config() 168 mutex_lock(&rtwdev->mutex); in rtw_ops_add_interface() 230 mutex_lock(&rtwdev->mutex); in rtw_ops_remove_interface() 277 mutex_lock(&rtwdev->mutex); in rtw_ops_configure_filter() 374 mutex_lock(&rtwdev->mutex); in rtw_ops_bss_info_changed() [all …]
|
/openbmc/linux/Documentation/locking/ |
H A D | mutex-design.rst | 26 Mutexes are represented by 'struct mutex', defined in include/linux/mutex.h 50 one spinner can compete for the mutex. 107 Statically define the mutex:: 111 Dynamically initialize the mutex:: 113 mutex_init(mutex); 115 Acquire the mutex, uninterruptible:: 117 void mutex_lock(struct mutex *lock); 121 Acquire the mutex, interruptible:: 131 Unlock the mutex:: 133 void mutex_unlock(struct mutex *lock); [all …]
|
/openbmc/linux/drivers/media/usb/uvc/ |
H A D | uvc_queue.c | 243 mutex_init(&queue->mutex); in uvc_queue_init() 253 mutex_lock(&queue->mutex); in uvc_queue_release() 267 mutex_lock(&queue->mutex); in uvc_request_buffers() 278 mutex_lock(&queue->mutex); in uvc_query_buffer() 290 mutex_lock(&queue->mutex); in uvc_create_buffers() 302 mutex_lock(&queue->mutex); in uvc_queue_buffer() 314 mutex_lock(&queue->mutex); in uvc_export_buffer() 326 mutex_lock(&queue->mutex); in uvc_dequeue_buffer() 337 mutex_lock(&queue->mutex); in uvc_queue_streamon() 348 mutex_lock(&queue->mutex); in uvc_queue_streamoff() [all …]
|
/openbmc/qemu/scripts/ |
H A D | analyse-locks-simpletrace.py | 22 def _get_mutex(self, mutex): argument 23 if not mutex in self.mutex_records: 24 self.mutex_records[mutex] = {"locks": 0, 32 return self.mutex_records[mutex] 34 def qemu_mutex_lock(self, timestamp, mutex, filename, line): argument 36 rec = self._get_mutex(mutex) 41 def qemu_mutex_locked(self, timestamp, mutex, filename, line): argument 43 rec = self._get_mutex(mutex) 50 def qemu_mutex_unlock(self, timestamp, mutex, filename, line): argument 52 rec = self._get_mutex(mutex)
|
/openbmc/linux/drivers/media/dvb-core/ |
H A D | dmxdev.c | 129 mutex_unlock(&dmxdev->mutex); in dvb_dvr_open() 153 mutex_unlock(&dmxdev->mutex); in dvb_dvr_open() 196 mutex_unlock(&dmxdev->mutex); in dvb_dvr_open() 205 mutex_lock(&dmxdev->mutex); in dvb_dvr_release() 234 mutex_unlock(&dmxdev->mutex); in dvb_dvr_release() 237 mutex_unlock(&dmxdev->mutex); in dvb_dvr_release() 261 mutex_unlock(&dmxdev->mutex); in dvb_dvr_write() 833 mutex_lock(&dmxdev->mutex); in dvb_dmxdev_filter_free() 1248 mutex_lock(&dmxdev->mutex); in dvb_demux_release() 1421 mutex_init(&dmxdev->mutex); in dvb_dmxdev_init() [all …]
|
/openbmc/linux/drivers/mtd/chips/ |
H A D | cfi_cmdset_0020.c | 268 mutex_lock(&chip->mutex); in do_read_onechip() 447 mutex_lock(&chip->mutex); in do_write_buffer() 507 mutex_lock(&chip->mutex); in do_write_buffer() 536 mutex_lock(&chip->mutex); in do_write_buffer() 574 mutex_lock(&chip->mutex); in do_write_buffer() 749 mutex_lock(&chip->mutex); in do_erase_oneblock() 799 mutex_lock(&chip->mutex); in do_erase_oneblock() 1046 mutex_lock(&chip->mutex); in do_lock_oneblock() 1092 mutex_lock(&chip->mutex); in do_lock_oneblock() 1192 mutex_lock(&chip->mutex); in do_unlock_oneblock() [all …]
|