}
EXPORT_SYMBOL_GPL(blk_queue_write_cache);
--/**
- * blk_queue_can_use_dma_map_merging - configure queue for merging segments.
- * @q: the request queue for the device
- * @dev: the device pointer for dma
- * blk_queue_required_elevator_features - Set a queue required elevator features
- * @q: the request queue for the target device
- * @features: Required elevator features OR'ed together
-- *
- * Tell the block layer about merging the segments by dma map of @q.
- * Tell the block layer that for the device controlled through @q, only the
- * only elevators that can be used are those that implement at least the set of
- * features specified by @features.
-- */
- bool blk_queue_can_use_dma_map_merging(struct request_queue *q,
- struct device *dev)
-void blk_queue_required_elevator_features(struct request_queue *q,
- unsigned int features)
--{
- unsigned long boundary = dma_get_merge_boundary(dev);
-
- if (!boundary)
- return false;
-
- /* No need to update max_segment_size. see blk_queue_virt_boundary() */
- blk_queue_virt_boundary(q, boundary);
-
- return true;
- q->required_elevator_features = features;
--}
- EXPORT_SYMBOL_GPL(blk_queue_can_use_dma_map_merging);
-EXPORT_SYMBOL_GPL(blk_queue_required_elevator_features);
--
/**
* disk_set_zoned - inidicate a zoned device
* @disk: gendisk to configure
void disk_set_independent_access_ranges(struct gendisk *disk,
struct blk_independent_access_ranges *iars);
- extern bool blk_queue_can_use_dma_map_merging(struct request_queue *q,
- struct device *dev);
-/*
- * Elevator features for blk_queue_required_elevator_features:
- */
-/* Supports zoned block devices sequential write constraint */
-#define ELEVATOR_F_ZBD_SEQ_WRITE (1U << 0)
-
-extern void blk_queue_required_elevator_features(struct request_queue *q,
- unsigned int features);
--
bool __must_check blk_get_queue(struct request_queue *);
extern void blk_put_queue(struct request_queue *);