Commit 339d3948 authored by Christoph Hellwig's avatar Christoph Hellwig Committed by Jens Axboe
Browse files

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: default avatarChristoph Hellwig <hch@lst.de>
Reviewed-by: default avatarDamien Le Moal <dlemoal@kernel.org>
Reviewed-by: default avatarHannes Reinecke <hare@suse.de>
Link: https://lore.kernel.org/r/20240617060532.127975-27-hch@lst.de


Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
parent 8c8f5c85
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -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);
+1 −1
Original line number Diff line number Diff line
@@ -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;
}

+1 −1
Original line number Diff line number Diff line
@@ -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);
+4 −2
Original line number Diff line number Diff line
@@ -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;