diff options
author | Christoph Hellwig <hch@lst.de> | 2016-07-19 11:28:43 +0200 |
---|---|---|
committer | Jens Axboe <axboe@fb.com> | 2016-07-20 17:37:04 -0600 |
commit | c0acf12a50c2b6cbaf72bdfe2b1b514c369a83c5 (patch) | |
tree | 1ff860936eceb0fd4a81de799bda51f7617a75fa /include | |
parent | ed996a52c868b62c4e5bf529cb4ccb44bcfa2f8e (diff) | |
download | linux-c0acf12a50c2b6cbaf72bdfe2b1b514c369a83c5.tar.bz2 |
block: shrink bio size again
The recent ops split grew the bio by adding the new ioprio field.
Shrink it again by using a 16-bit field for the bi_flags value and
filling the holes near the beginning of the structure.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Johannes Thumshirn <jthumshirn@suse.de>
Reviewed-by: Mike Christie <mchristi@redhat.com>
Signed-off-by: Jens Axboe <axboe@fb.com>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/blk_types.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/include/linux/blk_types.h b/include/linux/blk_types.h index b76463ea3587..c3525c5564b2 100644 --- a/include/linux/blk_types.h +++ b/include/linux/blk_types.h @@ -46,11 +46,11 @@ struct bvec_iter { struct bio { struct bio *bi_next; /* request queue link */ struct block_device *bi_bdev; - unsigned int bi_flags; /* status, command, etc */ int bi_error; unsigned int bi_rw; /* bottom bits req flags, * top bits REQ_OP */ + unsigned short bi_flags; /* status, command, etc */ unsigned short bi_ioprio; struct bvec_iter bi_iter; @@ -136,7 +136,7 @@ struct bio { * Flags starting here get preserved by bio_reset() - this includes * BVEC_POOL_IDX() */ -#define BIO_RESET_BITS 13 +#define BIO_RESET_BITS 10 /* * We support 6 different bvec pools, the last one is magic in that it @@ -151,7 +151,7 @@ struct bio { * freed. */ #define BVEC_POOL_BITS (4) -#define BVEC_POOL_OFFSET (32 - BVEC_POOL_BITS) +#define BVEC_POOL_OFFSET (16 - BVEC_POOL_BITS) #define BVEC_POOL_IDX(bio) ((bio)->bi_flags >> BVEC_POOL_OFFSET) #endif /* CONFIG_BLOCK */ |