aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/blkdev.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux/blkdev.h')
-rw-r--r--include/linux/blkdev.h38
1 files changed, 2 insertions, 36 deletions
diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h
index 1cd83ec077db..8ef705f800ab 100644
--- a/include/linux/blkdev.h
+++ b/include/linux/blkdev.h
@@ -357,7 +357,6 @@ struct request_queue
357 /* 357 /*
358 * for flush operations 358 * for flush operations
359 */ 359 */
360 unsigned int ordered, next_ordered;
361 unsigned int flush_flags; 360 unsigned int flush_flags;
362 unsigned int flush_seq; 361 unsigned int flush_seq;
363 int flush_err; 362 int flush_err;
@@ -465,40 +464,6 @@ static inline void queue_flag_clear(unsigned int flag, struct request_queue *q)
465 __clear_bit(flag, &q->queue_flags); 464 __clear_bit(flag, &q->queue_flags);
466} 465}
467 466
468enum {
469 /*
470 * Hardbarrier is supported with one of the following methods.
471 *
472 * NONE : hardbarrier unsupported
473 * DRAIN : ordering by draining is enough
474 * DRAIN_FLUSH : ordering by draining w/ pre and post flushes
475 * DRAIN_FUA : ordering by draining w/ pre flush and FUA write
476 */
477 QUEUE_ORDERED_DO_PREFLUSH = 0x10,
478 QUEUE_ORDERED_DO_BAR = 0x20,
479 QUEUE_ORDERED_DO_POSTFLUSH = 0x40,
480 QUEUE_ORDERED_DO_FUA = 0x80,
481
482 QUEUE_ORDERED_NONE = 0x00,
483
484 QUEUE_ORDERED_DRAIN = QUEUE_ORDERED_DO_BAR,
485 QUEUE_ORDERED_DRAIN_FLUSH = QUEUE_ORDERED_DRAIN |
486 QUEUE_ORDERED_DO_PREFLUSH |
487 QUEUE_ORDERED_DO_POSTFLUSH,
488 QUEUE_ORDERED_DRAIN_FUA = QUEUE_ORDERED_DRAIN |
489 QUEUE_ORDERED_DO_PREFLUSH |
490 QUEUE_ORDERED_DO_FUA,
491
492 /*
493 * FLUSH/FUA sequences.
494 */
495 QUEUE_FSEQ_STARTED = (1 << 0), /* flushing in progress */
496 QUEUE_FSEQ_PREFLUSH = (1 << 1), /* pre-flushing in progress */
497 QUEUE_FSEQ_DATA = (1 << 2), /* data write in progress */
498 QUEUE_FSEQ_POSTFLUSH = (1 << 3), /* post-flushing in progress */
499 QUEUE_FSEQ_DONE = (1 << 4),
500};
501
502#define blk_queue_plugged(q) test_bit(QUEUE_FLAG_PLUGGED, &(q)->queue_flags) 467#define blk_queue_plugged(q) test_bit(QUEUE_FLAG_PLUGGED, &(q)->queue_flags)
503#define blk_queue_tagged(q) test_bit(QUEUE_FLAG_QUEUED, &(q)->queue_flags) 468#define blk_queue_tagged(q) test_bit(QUEUE_FLAG_QUEUED, &(q)->queue_flags)
504#define blk_queue_stopped(q) test_bit(QUEUE_FLAG_STOPPED, &(q)->queue_flags) 469#define blk_queue_stopped(q) test_bit(QUEUE_FLAG_STOPPED, &(q)->queue_flags)
@@ -578,7 +543,8 @@ static inline void blk_clear_queue_full(struct request_queue *q, int sync)
578 * it already be started by driver. 543 * it already be started by driver.
579 */ 544 */
580#define RQ_NOMERGE_FLAGS \ 545#define RQ_NOMERGE_FLAGS \
581 (REQ_NOMERGE | REQ_STARTED | REQ_HARDBARRIER | REQ_SOFTBARRIER) 546 (REQ_NOMERGE | REQ_STARTED | REQ_HARDBARRIER | REQ_SOFTBARRIER | \
547 REQ_FLUSH | REQ_FUA)
582#define rq_mergeable(rq) \ 548#define rq_mergeable(rq) \
583 (!((rq)->cmd_flags & RQ_NOMERGE_FLAGS) && \ 549 (!((rq)->cmd_flags & RQ_NOMERGE_FLAGS) && \
584 (((rq)->cmd_flags & REQ_DISCARD) || \ 550 (((rq)->cmd_flags & REQ_DISCARD) || \