Lines Matching refs:request

9  * optional steps - PREFLUSH, DATA and POSTFLUSH - according to the request
12 * If a request doesn't have data, only REQ_PREFLUSH makes sense, which
13 * indicates a simple flush request. If there is data, REQ_PREFLUSH indicates
15 * REQ_FUA means that the data must be on non-volatile media on request
28 * The actual execution of flush is double buffered. Whenever a request
42 * C2. Flush is deferred if any request is executing DATA of its sequence.
46 * C3. The second condition is ignored if there is a request which has
54 * Note that a sequenced PREFLUSH/FUA request with DATA is completed twice.
61 * The above peculiarity requires that each PREFLUSH/FUA request has only one
103 static unsigned int blk_flush_policy(unsigned long fflags, struct request *rq)
120 static unsigned int blk_flush_cur_seq(struct request *rq)
125 static void blk_flush_restore_request(struct request *rq)
136 /* make @rq a normal request */
141 static void blk_account_io_flush(struct request *rq)
154 * @rq: PREFLUSH/FUA request being sequenced
165 static void blk_flush_complete_seq(struct request *rq,
203 * flush data request completion path. Restore @rq for
218 static enum rq_end_io_ret flush_end_io(struct request *flush_rq,
223 struct request *rq, *n;
238 * Flush request has to be marked as IDLE when it is really ended
258 /* account completion of the flush request */
273 bool is_flush_rq(struct request *rq)
279 * blk_kick_flush - consider issuing flush request
282 * @flags: cmd_flags of the original request
284 * Flush related states of @q have changed, consider issuing flush request.
295 struct request *first_rq =
296 list_first_entry(pending, struct request, queuelist);
297 struct request *flush_rq = fq->flush_rq;
318 * In case of none scheduler, borrow tag from the first request
353 static enum rq_end_io_ret mq_flush_data_end_io(struct request *rq,
385 static void blk_rq_init_flush(struct request *rq)
394 * Insert a PREFLUSH/FUA request into the flush state machine.
395 * Returns true if the request has been consumed by the flush state machine,
398 bool blk_insert_flush(struct request *rq)
405 /* FLUSH/FUA request must never be merged */
419 * the request accounting.
429 * complete the request.
435 * If there's data, but no flush is necessary, the request can
453 * Mark the request as part of a flush sequence and submit it
484 int rq_sz = sizeof(struct request);
510 /* bio based request queue hasn't flush queue */