Lines Matching refs:death
1220 if (ref->death) { in binder_cleanup_ref_olocked()
1225 binder_dequeue_work(ref->proc, &ref->death->work); in binder_cleanup_ref_olocked()
1360 kfree(ref->death); in binder_free_ref()
4312 struct binder_ref_death *death = NULL; in binder_thread_write() local
4325 death = kzalloc(sizeof(*death), GFP_KERNEL); in binder_thread_write()
4326 if (death == NULL) { in binder_thread_write()
4350 kfree(death); in binder_thread_write()
4366 if (ref->death) { in binder_thread_write()
4371 kfree(death); in binder_thread_write()
4375 INIT_LIST_HEAD(&death->work.entry); in binder_thread_write()
4376 death->cookie = cookie; in binder_thread_write()
4377 ref->death = death; in binder_thread_write()
4379 ref->death->work.type = BINDER_WORK_DEAD_BINDER; in binder_thread_write()
4383 &ref->death->work, &proc->todo); in binder_thread_write()
4388 if (ref->death == NULL) { in binder_thread_write()
4395 death = ref->death; in binder_thread_write()
4396 if (death->cookie != cookie) { in binder_thread_write()
4399 (u64)death->cookie, in binder_thread_write()
4405 ref->death = NULL; in binder_thread_write()
4407 if (list_empty(&death->work.entry)) { in binder_thread_write()
4408 death->work.type = BINDER_WORK_CLEAR_DEATH_NOTIFICATION; in binder_thread_write()
4414 &death->work); in binder_thread_write()
4417 &death->work, in binder_thread_write()
4423 BUG_ON(death->work.type != BINDER_WORK_DEAD_BINDER); in binder_thread_write()
4424 death->work.type = BINDER_WORK_DEAD_BINDER_AND_CLEAR; in binder_thread_write()
4434 struct binder_ref_death *death = NULL; in binder_thread_write() local
4449 death = tmp_death; in binder_thread_write()
4456 death); in binder_thread_write()
4457 if (death == NULL) { in binder_thread_write()
4463 binder_dequeue_work_ilocked(&death->work); in binder_thread_write()
4464 if (death->work.type == BINDER_WORK_DEAD_BINDER_AND_CLEAR) { in binder_thread_write()
4465 death->work.type = BINDER_WORK_CLEAR_DEATH_NOTIFICATION; in binder_thread_write()
4470 thread, &death->work); in binder_thread_write()
4473 &death->work, in binder_thread_write()
4870 struct binder_ref_death *death; in binder_thread_read() local
4874 death = container_of(w, struct binder_ref_death, work); in binder_thread_read()
4879 cookie = death->cookie; in binder_thread_read()
4890 kfree(death); in binder_thread_read()
5146 struct binder_ref_death *death; in binder_release_work() local
5148 death = container_of(w, struct binder_ref_death, work); in binder_release_work()
5151 (u64)death->cookie); in binder_release_work()
5152 kfree(death); in binder_release_work()
6145 int death = 0; in binder_node_release() local
6183 if (!ref->death) { in binder_node_release()
6188 death++; in binder_node_release()
6190 BUG_ON(!list_empty(&ref->death->work.entry)); in binder_node_release()
6191 ref->death->work.type = BINDER_WORK_DEAD_BINDER; in binder_node_release()
6192 binder_enqueue_work_ilocked(&ref->death->work, in binder_node_release()
6200 node->debug_id, refs, death); in binder_node_release()
6504 ref->data.weak, ref->death); in print_binder_ref_olocked()