block: Reduce the size of struct blk_integrity
The per-device properties in the blk_integrity structure were previously unsigned short. However, most of the values fit inside a char. The only exception is the data interval size and we can work around that by storing it as a power of two. This cuts the size of the dynamic portion of blk_integrity in half. Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com> Reported-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Sagi Grimberg <sagig@mellanox.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com> Signed-off-by: Jens Axboe <axboe@fb.com>
This commit is contained in:

committed by
Jens Axboe

parent
0f8087ecde
commit
a48f041d91
@@ -1470,10 +1470,10 @@ struct blk_integrity_profile {
|
||||
|
||||
struct blk_integrity {
|
||||
struct blk_integrity_profile *profile;
|
||||
unsigned short flags;
|
||||
unsigned short tuple_size;
|
||||
unsigned short interval;
|
||||
unsigned short tag_size;
|
||||
unsigned char flags;
|
||||
unsigned char tuple_size;
|
||||
unsigned char interval_exp;
|
||||
unsigned char tag_size;
|
||||
};
|
||||
|
||||
extern bool blk_integrity_is_initialized(struct gendisk *);
|
||||
|
Reference in New Issue
Block a user