mirror of
https://github.com/torvalds/linux.git
synced 2024-10-23 21:50:43 +00:00
null_blk: unalign call_single_data
Commit966a967116
randomly added alignment to this structure, but it's actually detrimental to performance of null_blk. Test case: Running on both the home and remote node shows a ~5% degradation in performance. While in there, move blk_status_t to the hole after the integer tag in the nullb_cmd structure. After this patch, we shrink the size from 192 to 152 bytes. Fixes:966a967116
("smp: Avoid using two cache lines for struct call_single_data") Signed-off-by: Jens Axboe <axboe@kernel.dk>
This commit is contained in:
parent
4ccafe0320
commit
0864fe09ab
|
@ -35,13 +35,13 @@ static inline u64 mb_per_tick(int mbps)
|
||||||
struct nullb_cmd {
|
struct nullb_cmd {
|
||||||
struct list_head list;
|
struct list_head list;
|
||||||
struct llist_node ll_list;
|
struct llist_node ll_list;
|
||||||
call_single_data_t csd;
|
struct __call_single_data csd;
|
||||||
struct request *rq;
|
struct request *rq;
|
||||||
struct bio *bio;
|
struct bio *bio;
|
||||||
unsigned int tag;
|
unsigned int tag;
|
||||||
|
blk_status_t error;
|
||||||
struct nullb_queue *nq;
|
struct nullb_queue *nq;
|
||||||
struct hrtimer timer;
|
struct hrtimer timer;
|
||||||
blk_status_t error;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
struct nullb_queue {
|
struct nullb_queue {
|
||||||
|
|
Loading…
Reference in New Issue
Block a user