Searched refs:fault_pending_wqh (Results 1 - 1 of 1) sorted by relevance

/linux-4.4.14/fs/
H A Duserfaultfd.c38 * Start with fault_pending_wqh and fault_wqh so they're more likely
43 wait_queue_head_t fault_pending_wqh; member in struct:userfaultfd_ctx
48 /* a refile sequence protected by fault_pending_wqh lock */
134 VM_BUG_ON(spin_is_locked(&ctx->fault_pending_wqh.lock)); userfaultfd_ctx_put()
135 VM_BUG_ON(waitqueue_active(&ctx->fault_pending_wqh)); userfaultfd_ctx_put()
186 * the fault_pending_wqh to avoid userland having to UFFDIO_WAKE any
341 spin_lock(&ctx->fault_pending_wqh.lock); handle_userfault()
346 __add_wait_queue(&ctx->fault_pending_wqh, &uwq.wq); handle_userfault()
354 spin_unlock(&ctx->fault_pending_wqh.lock); handle_userfault()
407 spin_lock(&ctx->fault_pending_wqh.lock); handle_userfault()
413 spin_unlock(&ctx->fault_pending_wqh.lock); handle_userfault()
475 spin_lock(&ctx->fault_pending_wqh.lock); userfaultfd_release()
476 __wake_up_locked_key(&ctx->fault_pending_wqh, TASK_NORMAL, &range); userfaultfd_release()
478 spin_unlock(&ctx->fault_pending_wqh.lock); userfaultfd_release()
485 /* fault_pending_wqh.lock must be hold by the caller */ find_userfault()
492 VM_BUG_ON(!spin_is_locked(&ctx->fault_pending_wqh.lock)); find_userfault()
495 if (!waitqueue_active(&ctx->fault_pending_wqh)) find_userfault()
498 wq = list_last_entry(&ctx->fault_pending_wqh.task_list, find_userfault()
534 if (waitqueue_active(&ctx->fault_pending_wqh)) userfaultfd_poll()
549 /* always take the fd_wqh lock before the fault_pending_wqh lock */ userfaultfd_ctx_read()
554 spin_lock(&ctx->fault_pending_wqh.lock); userfaultfd_ctx_read()
567 * The fault_pending_wqh.lock prevents the uwq userfaultfd_ctx_read()
571 * fault_pending_wqh to fault_wqh, it's not userfaultfd_ctx_read()
594 spin_unlock(&ctx->fault_pending_wqh.lock); userfaultfd_ctx_read()
598 spin_unlock(&ctx->fault_pending_wqh.lock); userfaultfd_ctx_read()
656 spin_lock(&ctx->fault_pending_wqh.lock); __wake_userfault()
658 if (waitqueue_active(&ctx->fault_pending_wqh)) __wake_userfault()
659 __wake_up_locked_key(&ctx->fault_pending_wqh, TASK_NORMAL, __wake_userfault()
663 spin_unlock(&ctx->fault_pending_wqh.lock); __wake_userfault()
689 need_wakeup = waitqueue_active(&ctx->fault_pending_wqh) || wake_userfault()
1207 spin_lock(&ctx->fault_pending_wqh.lock); userfaultfd_show_fdinfo()
1208 list_for_each_entry(wq, &ctx->fault_pending_wqh.task_list, task_list) { userfaultfd_show_fdinfo()
1217 spin_unlock(&ctx->fault_pending_wqh.lock); userfaultfd_show_fdinfo()
1246 init_waitqueue_head(&ctx->fault_pending_wqh); init_once_userfaultfd_ctx()

Completed in 77 milliseconds