null-blk: save memory footprint for struct nullb_cmd
Total 16 bytes can be saved in two ways: 1) The field 'bio' will only be used in bio based mode, and the field 'rq' will only be used in mq mode. Since they won't be used in the same time, declare a union for them. 2) The field 'bool fake_timeout' can be placed in the hole after the field 'error'. Signed-off-by: Yu Kuai <yukuai3@huawei.com> Link: https://lore.kernel.org/r/20220426022133.3999006-1-yukuai3@huawei.com Signed-off-by: Jens Axboe <axboe@kernel.dk>
This commit is contained in:
parent
5ea7c1339e
commit
8ba816b23a
|
@ -16,13 +16,15 @@
|
||||||
#include <linux/mutex.h>
|
#include <linux/mutex.h>
|
||||||
|
|
||||||
struct nullb_cmd {
|
struct nullb_cmd {
|
||||||
struct request *rq;
|
union {
|
||||||
struct bio *bio;
|
struct request *rq;
|
||||||
|
struct bio *bio;
|
||||||
|
};
|
||||||
unsigned int tag;
|
unsigned int tag;
|
||||||
blk_status_t error;
|
blk_status_t error;
|
||||||
|
bool fake_timeout;
|
||||||
struct nullb_queue *nq;
|
struct nullb_queue *nq;
|
||||||
struct hrtimer timer;
|
struct hrtimer timer;
|
||||||
bool fake_timeout;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
struct nullb_queue {
|
struct nullb_queue {
|
||||||
|
|
Loading…
Reference in New Issue