Home
last modified time | relevance | path

Searched refs:rwsem (Results 1 – 35 of 35) sorted by relevance

/linux-4.1.27/kernel/locking/
DMakefile2 obj-y += mutex.o semaphore.o rwsem.o
25 obj-$(CONFIG_RWSEM_GENERIC_SPINLOCK) += rwsem-spinlock.o
26 obj-$(CONFIG_RWSEM_XCHGADD_ALGORITHM) += rwsem-xadd.o
27 obj-$(CONFIG_PERCPU_RWSEM) += percpu-rwsem.o
/linux-4.1.27/include/linux/
Drmap.h29 struct rw_semaphore rwsem; /* W: modification, R: walking the list */ member
110 down_write(&anon_vma->root->rwsem); in anon_vma_lock_write()
115 up_write(&anon_vma->root->rwsem); in anon_vma_unlock_write()
120 down_read(&anon_vma->root->rwsem); in anon_vma_lock_read()
125 up_read(&anon_vma->root->rwsem); in anon_vma_unlock_read()
Dnotifier.h65 struct rw_semaphore rwsem; member
84 init_rwsem(&(name)->rwsem); \
100 .rwsem = __RWSEM_INITIALIZER((name).rwsem), \
Dposix-clock.h121 struct rw_semaphore rwsem; member
Dipc_namespace.h16 struct rw_semaphore rwsem; member
Dcpufreq.h106 struct rw_semaphore rwsem; member
Dnfs_fs.h183 struct rw_semaphore rwsem; member
/linux-4.1.27/kernel/
Dnotifier.c226 down_write(&nh->rwsem); in blocking_notifier_chain_register()
228 up_write(&nh->rwsem); in blocking_notifier_chain_register()
249 down_write(&nh->rwsem); in blocking_notifier_chain_cond_register()
251 up_write(&nh->rwsem); in blocking_notifier_chain_cond_register()
279 down_write(&nh->rwsem); in blocking_notifier_chain_unregister()
281 up_write(&nh->rwsem); in blocking_notifier_chain_unregister()
316 down_read(&nh->rwsem); in __blocking_notifier_call_chain()
319 up_read(&nh->rwsem); in __blocking_notifier_call_chain()
/linux-4.1.27/kernel/time/
Dposix-clock.c37 down_read(&clk->rwsem); in get_posix_clock()
42 up_read(&clk->rwsem); in get_posix_clock()
49 up_read(&clk->rwsem); in put_posix_clock()
159 down_read(&clk->rwsem); in posix_clock_open()
175 up_read(&clk->rwsem); in posix_clock_open()
214 init_rwsem(&clk->rwsem); in posix_clock_register()
236 down_write(&clk->rwsem); in posix_clock_unregister()
238 up_write(&clk->rwsem); in posix_clock_unregister()
/linux-4.1.27/drivers/cpufreq/
Dcpufreq.c771 down_read(&policy->rwsem); in show()
778 up_read(&policy->rwsem); in show()
799 down_write(&policy->rwsem); in store()
806 up_write(&policy->rwsem); in store()
976 down_write(&policy->rwsem); in cpufreq_add_policy_cpu()
984 up_write(&policy->rwsem); in cpufreq_add_policy_cpu()
1032 init_rwsem(&policy->rwsem); in cpufreq_policy_alloc()
1056 down_read(&policy->rwsem); in cpufreq_policy_put_kobj()
1059 up_read(&policy->rwsem); in cpufreq_policy_put_kobj()
1094 down_write(&policy->rwsem); in update_policy_cpu()
[all …]
/linux-4.1.27/drivers/leds/
Dleds-bd2802.c74 struct rw_semaphore rwsem; member
334 down_write(&led->rwsem); \
336 up_write(&led->rwsem); \
439 down_read(&led->rwsem); in bd2802_show_adv_conf()
444 up_read(&led->rwsem); in bd2802_show_adv_conf()
457 down_write(&led->rwsem); in bd2802_store_adv_conf()
462 up_write(&led->rwsem); in bd2802_store_adv_conf()
482 down_read(&led->rwsem); \
484 up_read(&led->rwsem); \
498 down_write(&led->rwsem); \
[all …]
/linux-4.1.27/ipc/
Dshm.c276 down_write(&shm_ids(ns).rwsem); in shm_close()
295 up_write(&shm_ids(ns).rwsem); in shm_close()
323 down_write(&shm_ids(ns).rwsem); in shm_destroy_orphaned()
326 up_write(&shm_ids(ns).rwsem); in shm_destroy_orphaned()
344 down_read(&shm_ids(ns).rwsem); in exit_shm()
352 up_read(&shm_ids(ns).rwsem); in exit_shm()
361 down_write(&shm_ids(ns).rwsem); in exit_shm()
373 up_write(&shm_ids(ns).rwsem); in exit_shm()
824 down_write(&shm_ids(ns).rwsem); in shmctl_down()
863 up_write(&shm_ids(ns).rwsem); in shmctl_down()
[all …]
Dutil.c105 init_rwsem(&ids->rwsem); in ipc_init_ids()
284 down_write(&ids->rwsem); in ipcget_new()
286 up_write(&ids->rwsem); in ipcget_new()
348 down_write(&ids->rwsem); in ipcget_public()
374 up_write(&ids->rwsem); in ipcget_public()
805 down_read(&ids->rwsem); in sysvipc_proc_start()
832 up_read(&ids->rwsem); in sysvipc_proc_stop()
Dnamespace.c77 down_write(&ids->rwsem); in free_ipcs()
90 up_write(&ids->rwsem); in free_ipcs()
Dmsg.c352 down_write(&msg_ids(ns).rwsem); in msgctl_down()
408 up_write(&msg_ids(ns).rwsem); in msgctl_down()
443 down_read(&msg_ids(ns).rwsem); in msgctl_nolock()
454 up_read(&msg_ids(ns).rwsem); in msgctl_nolock()
Dsem.c1204 down_read(&sem_ids(ns).rwsem); in semctl_nolock()
1213 up_read(&sem_ids(ns).rwsem); in semctl_nolock()
1544 down_write(&sem_ids(ns).rwsem); in semctl_down()
1583 up_write(&sem_ids(ns).rwsem); in semctl_down()
/linux-4.1.27/arch/x86/um/
DMakefile23 subarch-$(CONFIG_RWSEM_XCHGADD_ALGORITHM) += ../lib/rwsem.o
30 ../lib/rwsem.o
/linux-4.1.27/arch/powerpc/include/asm/
DKbuild8 generic-y += rwsem.h
/linux-4.1.27/mm/
Drmap.c109 if (rwsem_is_locked(&anon_vma->root->rwsem)) { in anon_vma_free()
227 up_write(&root->rwsem); in lock_anon_vma_root()
229 down_write(&root->rwsem); in lock_anon_vma_root()
237 up_write(&root->rwsem); in unlock_anon_vma_root()
418 init_rwsem(&anon_vma->rwsem); in anon_vma_ctor()
511 if (down_read_trylock(&root_anon_vma->rwsem)) { in page_lock_anon_vma_read()
518 up_read(&root_anon_vma->rwsem); in page_lock_anon_vma_read()
Dmmap.c3139 down_write_nest_lock(&anon_vma->root->rwsem, &mm->mmap_sem); in vm_lock_anon_vma()
/linux-4.1.27/drivers/gpu/drm/vmwgfx/
Dvmwgfx_irq.c135 down_read(&fifo_state->rwsem); in vmw_fallback_wait()
175 up_read(&fifo_state->rwsem); in vmw_fallback_wait()
Dvmwgfx_fifo.c113 init_rwsem(&fifo->rwsem); in vmw_fifo_init()
468 down_write(&fifo_state->rwsem); in vmw_fifo_commit()
480 up_write(&fifo_state->rwsem); in vmw_fifo_commit()
Dvmwgfx_drv.h185 struct rw_semaphore rwsem; member
/linux-4.1.27/arch/arm/include/asm/
DKbuild22 generic-y += rwsem.h
/linux-4.1.27/arch/x86/lib/
DMakefile23 lib-$(CONFIG_RWSEM_XCHGADD_ALGORITHM) += rwsem.o
/linux-4.1.27/arch/arm64/include/asm/
DKbuild37 generic-y += rwsem.h
/linux-4.1.27/arch/hexagon/include/asm/
DKbuild39 generic-y += rwsem.h
/linux-4.1.27/Documentation/driver-model/
Dporting.txt429 - rwsem
431 struct bus_type contains an rwsem that protects all core accesses to
Ddriver.txt147 The probe() entry is called in task context, with the bus's rwsem locked
/linux-4.1.27/lib/
Dlocking-selftest.c118 struct mutex *mutex, struct rw_semaphore *rwsem)\
123 init_rwsem(rwsem); \
DKconfig.debug962 mutex or rwsem) is incorrectly freed by the kernel, via any of the
/linux-4.1.27/arch/tile/
DKconfig76 # FIXME: tilegx can implement a more efficient rwsem.
/linux-4.1.27/fs/nfs/
Dnfs4state.c1399 down_write(&nfsi->rwsem); in nfs4_reclaim_locks()
1440 up_write(&nfsi->rwsem); in nfs4_reclaim_locks()
Dnfs4proc.c5545 down_read(&nfsi->rwsem); in nfs4_proc_unlck()
5547 up_read(&nfsi->rwsem); in nfs4_proc_unlck()
5551 up_read(&nfsi->rwsem); in nfs4_proc_unlck()
5932 down_read(&nfsi->rwsem); in _nfs4_proc_setlk()
5938 up_read(&nfsi->rwsem); in _nfs4_proc_setlk()
5941 up_read(&nfsi->rwsem); in _nfs4_proc_setlk()
Dinode.c1896 init_rwsem(&nfsi->rwsem); in nfs4_init_once()