Lines Matching refs:lock
28 acpi_status acpi_ut_create_rw_lock(struct acpi_rw_lock *lock) in acpi_ut_create_rw_lock() argument
32 lock->num_readers = 0; in acpi_ut_create_rw_lock()
33 status = acpi_os_create_mutex(&lock->reader_mutex); in acpi_ut_create_rw_lock()
38 status = acpi_os_create_mutex(&lock->writer_mutex); in acpi_ut_create_rw_lock()
42 void acpi_ut_delete_rw_lock(struct acpi_rw_lock *lock) in acpi_ut_delete_rw_lock() argument
45 acpi_os_delete_mutex(lock->reader_mutex); in acpi_ut_delete_rw_lock()
46 acpi_os_delete_mutex(lock->writer_mutex); in acpi_ut_delete_rw_lock()
48 lock->num_readers = 0; in acpi_ut_delete_rw_lock()
49 lock->reader_mutex = NULL; in acpi_ut_delete_rw_lock()
50 lock->writer_mutex = NULL; in acpi_ut_delete_rw_lock()
71 acpi_status acpi_ut_acquire_read_lock(struct acpi_rw_lock *lock) in acpi_ut_acquire_read_lock() argument
75 status = acpi_os_acquire_mutex(lock->reader_mutex, ACPI_WAIT_FOREVER); in acpi_ut_acquire_read_lock()
82 lock->num_readers++; in acpi_ut_acquire_read_lock()
83 if (lock->num_readers == 1) { in acpi_ut_acquire_read_lock()
85 acpi_os_acquire_mutex(lock->writer_mutex, in acpi_ut_acquire_read_lock()
89 acpi_os_release_mutex(lock->reader_mutex); in acpi_ut_acquire_read_lock()
93 acpi_status acpi_ut_release_read_lock(struct acpi_rw_lock *lock) in acpi_ut_release_read_lock() argument
97 status = acpi_os_acquire_mutex(lock->reader_mutex, ACPI_WAIT_FOREVER); in acpi_ut_release_read_lock()
104 lock->num_readers--; in acpi_ut_release_read_lock()
105 if (lock->num_readers == 0) { in acpi_ut_release_read_lock()
106 acpi_os_release_mutex(lock->writer_mutex); in acpi_ut_release_read_lock()
109 acpi_os_release_mutex(lock->reader_mutex); in acpi_ut_release_read_lock()
129 acpi_status acpi_ut_acquire_write_lock(struct acpi_rw_lock *lock) in acpi_ut_acquire_write_lock() argument
133 status = acpi_os_acquire_mutex(lock->writer_mutex, ACPI_WAIT_FOREVER); in acpi_ut_acquire_write_lock()
137 void acpi_ut_release_write_lock(struct acpi_rw_lock *lock) in acpi_ut_release_write_lock() argument
140 acpi_os_release_mutex(lock->writer_mutex); in acpi_ut_release_write_lock()