/* Queue up a kiocb to be retried. Assumes that the kiocb has already been marked as kicked, and places it on the retry run list for the corresponding ioctx, if it isn't already queued. Returns 1 if it actually queued the kiocb (to tell the caller to activate the work queue to process it), or 0, if it found that it was already queued.  */
static int __queue_kicked_iocb(struct kiocb *iocb)
/* Queue up a kiocb to be retried. Assumes that the kiocb has already been marked as kicked, and places it on the retry run list for the corresponding ioctx, if it isn't already queued. Returns 1 if it actually queued the kiocb (to tell the caller to activate the work queue to process it), or 0, if it found that it was already queued.  */
static int __queue_kicked_iocb(struct kiocb *iocb)
{
	struct kioctx *ctx = iocb->ki_ctx;
	assert_spin_locked(&ctx->ctx_lock);
	if (list_empty(&iocb->ki_run_list)) {
		list_add_tail(&iocb->ki_run_list,
			&ctx->run_list);
		return 1;
	}
	return 0;
}