From: Yu Kuai <yukuai3@xxxxxxxxxx> Changes in v3: - add patch 1 from Ming, swap bd_inode layout with bd_openers and bd_size_lock; - change bd_flags from u32 to u16 in patch 2, prevent to affect layout of other fields; Changes in v2: - don't use test/set_bit() for new field, because unsigned long will cause that some field can't be placed in the first cacheline(64 bytes), use unsigned int for new field and test/set/clear it like 'bio->bi_flags'. Ming Lei (1): block: move .bd_inode into 1st cacheline of block_device Yu Kuai (2): block: introduce new field bd_flags in block_device block: warn once for each partition in bio_check_ro() block/bdev.c | 15 ++++++++------- block/blk-core.c | 21 +++++++++++++++------ block/genhd.c | 15 +++++++++++---- block/ioctl.c | 6 +++++- include/linux/blk_types.h | 31 ++++++++++++++++++++++++------- include/linux/blkdev.h | 5 +++-- 6 files changed, 66 insertions(+), 27 deletions(-) -- 2.39.2