Currently the loop driver just simulates 512-byte blocks. When creating bootable images for 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 Hannes Reinecke (4): loop: Remove unused 'bdev' argument from loop_set_capacity loop: Enable correct physical blocksize loop: Add 'lo_logical_blocksize' loop: Pass logical blocksize in 'lo_init[0]' ioctl field drivers/block/loop.c | 35 ++++++++++++++++++++++++++++++----- drivers/block/loop.h | 1 + include/uapi/linux/loop.h | 1 + 3 files changed, 32 insertions(+), 5 deletions(-) -- 1.8.4.5 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

