Lines Matching refs:state
294 unsigned long state; member
1949 struct io_submit_state *state) in io_flush_cached_locked_reqs() argument
1952 list_splice_init(&ctx->locked_free_list, &state->free_list); in io_flush_cached_locked_reqs()
1960 struct io_submit_state *state = &ctx->submit_state; in io_flush_cached_reqs() local
1969 io_flush_cached_locked_reqs(ctx, state); in io_flush_cached_reqs()
1971 nr = state->free_reqs; in io_flush_cached_reqs()
1972 while (!list_empty(&state->free_list)) { in io_flush_cached_reqs()
1973 struct io_kiocb *req = list_first_entry(&state->free_list, in io_flush_cached_reqs()
1977 state->reqs[nr++] = req; in io_flush_cached_reqs()
1978 if (nr == ARRAY_SIZE(state->reqs)) in io_flush_cached_reqs()
1982 state->free_reqs = nr; in io_flush_cached_reqs()
1995 struct io_submit_state *state = &ctx->submit_state; in io_alloc_req() local
1999 BUILD_BUG_ON(ARRAY_SIZE(state->reqs) < IO_REQ_ALLOC_BATCH); in io_alloc_req()
2001 if (likely(state->free_reqs || io_flush_cached_reqs(ctx))) in io_alloc_req()
2005 state->reqs); in io_alloc_req()
2012 state->reqs[0] = kmem_cache_alloc(req_cachep, gfp); in io_alloc_req()
2013 if (!state->reqs[0]) in io_alloc_req()
2019 io_preinit_req(state->reqs[i], ctx); in io_alloc_req()
2020 state->free_reqs = ret; in io_alloc_req()
2022 state->free_reqs--; in io_alloc_req()
2023 return state->reqs[state->free_reqs]; in io_alloc_req()
2373 struct io_submit_state *state) in io_req_free_batch() argument
2387 if (state->free_reqs != ARRAY_SIZE(state->reqs)) in io_req_free_batch()
2388 state->reqs[state->free_reqs++] = req; in io_req_free_batch()
2390 list_add(&req->inflight_entry, &state->free_list); in io_req_free_batch()
2396 struct io_submit_state *state = &ctx->submit_state; in io_submit_flush_completions() local
2397 int i, nr = state->compl_nr; in io_submit_flush_completions()
2402 struct io_kiocb *req = state->compl_reqs[i]; in io_submit_flush_completions()
2413 struct io_kiocb *req = state->compl_reqs[i]; in io_submit_flush_completions()
2420 state->compl_nr = 0; in io_submit_flush_completions()
2806 struct io_submit_state *state = &ctx->submit_state; in io_req_task_complete() local
2809 state->compl_reqs[state->compl_nr++] = req; in io_req_task_complete()
2810 if (state->compl_nr == ARRAY_SIZE(state->compl_reqs)) in io_req_task_complete()
3614 struct iov_iter_state __state, *state; in io_read() local
3620 state = &rw->iter_state; in io_read()
3626 iov_iter_restore(iter, state); in io_read()
3632 state = &__state; in io_read()
3633 iov_iter_save_state(iter, state); in io_read()
3681 iov_iter_restore(iter, state); in io_read()
3695 state = &rw->iter_state; in io_read()
3708 iov_iter_save_state(iter, state); in io_read()
3728 iov_iter_restore(iter, state); in io_read()
3753 struct iov_iter_state __state, *state; in io_write() local
3759 state = &rw->iter_state; in io_write()
3760 iov_iter_restore(iter, state); in io_write()
3766 state = &__state; in io_write()
3767 iov_iter_save_state(iter, state); in io_write()
3835 iov_iter_restore(iter, state); in io_write()
7093 struct io_submit_state *state = &ctx->submit_state; in __io_queue_sqe() local
7095 state->compl_reqs[state->compl_nr++] = req; in __io_queue_sqe()
7096 if (state->compl_nr == ARRAY_SIZE(state->compl_reqs)) in __io_queue_sqe()
7178 struct io_submit_state *state; in io_init_req() local
7213 state = &ctx->submit_state; in io_init_req()
7219 if (!state->plug_started && state->ios_left > 1 && in io_init_req()
7221 blk_start_plug(&state->plug); in io_init_req()
7222 state->plug_started = true; in io_init_req()
7233 state->ios_left--; in io_init_req()
7322 static void io_submit_state_end(struct io_submit_state *state, in io_submit_state_end() argument
7325 if (state->link.head) in io_submit_state_end()
7326 io_queue_sqe(state->link.head); in io_submit_state_end()
7327 if (state->compl_nr) in io_submit_state_end()
7329 if (state->plug_started) in io_submit_state_end()
7330 blk_finish_plug(&state->plug); in io_submit_state_end()
7336 static void io_submit_state_start(struct io_submit_state *state, in io_submit_state_start() argument
7339 state->plug_started = false; in io_submit_state_start()
7340 state->ios_left = max_ios; in io_submit_state_start()
7342 state->link.head = NULL; in io_submit_state_start()
7439 return READ_ONCE(sqd->state); in io_sqd_events_pending()
7513 if (test_bit(IO_SQ_THREAD_SHOULD_PARK, &sqd->state) || in io_sqd_handle_event()
7521 return did_sig || test_bit(IO_SQ_THREAD_SHOULD_STOP, &sqd->state); in io_sqd_handle_event()
8056 clear_bit(IO_SQ_THREAD_SHOULD_PARK, &sqd->state); in io_sq_thread_unpark()
8058 set_bit(IO_SQ_THREAD_SHOULD_PARK, &sqd->state); in io_sq_thread_unpark()
8068 set_bit(IO_SQ_THREAD_SHOULD_PARK, &sqd->state); in io_sq_thread_park()
8077 WARN_ON_ONCE(test_bit(IO_SQ_THREAD_SHOULD_STOP, &sqd->state)); in io_sq_thread_stop()
8079 set_bit(IO_SQ_THREAD_SHOULD_STOP, &sqd->state); in io_sq_thread_stop()
9357 struct io_submit_state *state = &ctx->submit_state; in io_req_caches_free() local
9361 if (state->free_reqs) { in io_req_caches_free()
9362 kmem_cache_free_bulk(req_cachep, state->free_reqs, state->reqs); in io_req_caches_free()
9363 state->free_reqs = 0; in io_req_caches_free()
9366 io_flush_cached_locked_reqs(ctx, state); in io_req_caches_free()
9367 io_req_cache_free(&state->free_list); in io_req_caches_free()