mirror of
https://github.com/torvalds/linux.git
synced 2024-11-21 19:41:42 +00:00
block: move the bounce flag into the features field
Move the bounce flag into the features field to reclaim a little bit of space. Signed-off-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Damien Le Moal <dlemoal@kernel.org> Reviewed-by: Hannes Reinecke <hare@suse.de> Link: https://lore.kernel.org/r/20240617060532.127975-27-hch@lst.de Signed-off-by: Jens Axboe <axboe@kernel.dk>
This commit is contained in:
parent
8c8f5c85b2
commit
339d3948c0
@ -479,7 +479,6 @@ int blk_stack_limits(struct queue_limits *t, struct queue_limits *b,
|
||||
b->max_write_zeroes_sectors);
|
||||
t->max_zone_append_sectors = min(queue_limits_max_zone_append_sectors(t),
|
||||
queue_limits_max_zone_append_sectors(b));
|
||||
t->bounce = max(t->bounce, b->bounce);
|
||||
|
||||
t->seg_boundary_mask = min_not_zero(t->seg_boundary_mask,
|
||||
b->seg_boundary_mask);
|
||||
|
@ -394,7 +394,7 @@ struct bio *__blk_queue_bounce(struct bio *bio, struct request_queue *q);
|
||||
static inline bool blk_queue_may_bounce(struct request_queue *q)
|
||||
{
|
||||
return IS_ENABLED(CONFIG_BOUNCE) &&
|
||||
q->limits.bounce == BLK_BOUNCE_HIGH &&
|
||||
(q->limits.features & BLK_FEAT_BOUNCE_HIGH) &&
|
||||
max_low_pfn >= max_pfn;
|
||||
}
|
||||
|
||||
|
@ -1986,7 +1986,7 @@ void scsi_init_limits(struct Scsi_Host *shost, struct queue_limits *lim)
|
||||
shost->dma_alignment, dma_get_cache_alignment() - 1);
|
||||
|
||||
if (shost->no_highmem)
|
||||
lim->bounce = BLK_BOUNCE_HIGH;
|
||||
lim->features |= BLK_FEAT_BOUNCE_HIGH;
|
||||
|
||||
dma_set_seg_boundary(dev, shost->dma_boundary);
|
||||
dma_set_max_seg_size(dev, shost->max_segment_size);
|
||||
|
@ -325,6 +325,9 @@ enum {
|
||||
|
||||
/* skip this queue in blk_mq_(un)quiesce_tagset */
|
||||
BLK_FEAT_SKIP_TAGSET_QUIESCE = (1u << 13),
|
||||
|
||||
/* bounce all highmem pages */
|
||||
BLK_FEAT_BOUNCE_HIGH = (1u << 14),
|
||||
};
|
||||
|
||||
/*
|
||||
@ -332,7 +335,7 @@ enum {
|
||||
*/
|
||||
#define BLK_FEAT_INHERIT_MASK \
|
||||
(BLK_FEAT_WRITE_CACHE | BLK_FEAT_FUA | BLK_FEAT_ROTATIONAL | \
|
||||
BLK_FEAT_STABLE_WRITES | BLK_FEAT_ZONED)
|
||||
BLK_FEAT_STABLE_WRITES | BLK_FEAT_ZONED | BLK_FEAT_BOUNCE_HIGH)
|
||||
|
||||
/* internal flags in queue_limits.flags */
|
||||
enum {
|
||||
@ -352,7 +355,6 @@ enum blk_bounce {
|
||||
struct queue_limits {
|
||||
unsigned int features;
|
||||
unsigned int flags;
|
||||
enum blk_bounce bounce;
|
||||
unsigned long seg_boundary_mask;
|
||||
unsigned long virt_boundary_mask;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user