.. | .. |
---|
166 | 166 | if (wait) { |
---|
167 | 167 | wq_entry.flags |= WQ_FLAG_EXCLUSIVE | reader * WQ_FLAG_CUSTOM; |
---|
168 | 168 | __add_wait_queue_entry_tail(&sem->waiters, &wq_entry); |
---|
| 169 | + trace_android_vh_percpu_rwsem_wq_add(sem, reader); |
---|
169 | 170 | } |
---|
170 | 171 | spin_unlock_irq(&sem->waiters.lock); |
---|
171 | 172 | |
---|
.. | .. |
---|
258 | 259 | |
---|
259 | 260 | void percpu_up_write(struct percpu_rw_semaphore *sem) |
---|
260 | 261 | { |
---|
261 | | - trace_android_vh_record_pcpu_rwsem_starttime(current, 0); |
---|
262 | 262 | rwsem_release(&sem->dep_map, _RET_IP_); |
---|
263 | 263 | |
---|
264 | 264 | /* |
---|
.. | .. |
---|
284 | 284 | * exclusive write lock because its counting. |
---|
285 | 285 | */ |
---|
286 | 286 | rcu_sync_exit(&sem->rss); |
---|
| 287 | + trace_android_vh_record_pcpu_rwsem_starttime(current, 0); |
---|
287 | 288 | } |
---|
288 | 289 | EXPORT_SYMBOL_GPL(percpu_up_write); |
---|
289 | 290 | |
---|