Messages in this thread | | | From | Hannes Reinecke <> | Subject | [PATCHv3 0/4] loop: enable different physical blocksizes | Date | Tue, 10 Nov 2015 09:13:06 +0100 |
| |
Currently the loop driver just simulates 512-byte blocks. When creating bootable images on virtual machines it might be required to use a different physical blocksize (eg 4k for S/390 DASD), as the some bootloaders (like lilo or zipl for S/390) need to know the physical block addresses of the kernel and initrd.
This patchset extends the current LOOP_SET_STATUS64 ioctl to set the logical and physical blocksize by re-using the existing 'init' fields, which are currently unused.
As usual, comments and reviews are welcome.
Changes to v1: - Move LO_FLAGS_BLOCKSIZE definition - Reshuffle patches
Changes to v2: - Drop lo_flags setting in loop_set_fd as suggested by Ming Lei
Hannes Reinecke (4): loop: Enable correct physical blocksize loop: Remove unused 'bdev' argument from loop_set_capacity loop: Add 'lo_logical_blocksize' loop: Pass logical blocksize in 'lo_init[0]' ioctl field
drivers/block/loop.c | 41 ++++++++++++++++++++++++++++++++++------- drivers/block/loop.h | 1 + include/uapi/linux/loop.h | 1 + 3 files changed, 36 insertions(+), 7 deletions(-)
-- 1.8.5.6
| |