Skip to content
  • Christoph Hellwig's avatar
    block: add logical_block_size property · 8cfacf07
    Christoph Hellwig authored
    
    
    Add a logical block size attribute as various guest side tools only
    increase the filesystem sector size based on it, not the advisory
    physical block size.
    
    For scsi we already have support for a different logical block size
    in place for CDROMs that we can built upon.  Only my recent block
    device characteristics VPD page needs some fixups.  Note that we
    leave the logial block size for CDROMs hardcoded as the 2k value
    is expected for it in general.
    
    For virtio-blk we already have a feature flag claiming to support
    a variable logical block size that was added for the s390 kuli
    hypervisor.  Interestingly it does not actually change the units
    in which the protocol works, which is still fixed at 512 bytes,
    but only communicates a different minimum I/O granularity.  So
    all we need to do in virtio is to add a trap for unaligned I/O
    and round down the device size to the next multiple of the logical
    block size.
    
    IDE does not support any other logical block size than 512 bytes.
    
    Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
    Signed-off-by: default avatarAnthony Liguori <aliguori@us.ibm.com>
    8cfacf07