Skip to content
  • Mike Snitzer's avatar
    dm thin metadata: do not allow the data block size to change · 4bbfb80c
    Mike Snitzer authored
    
    
    commit 9aec8629ec829fc9403788cd959e05dd87988bd1 upstream.
    
    The block size for the thin-pool's data device must remained fixed for
    the life of the thin-pool.  Disallow any attempt to change the
    thin-pool's data block size.
    
    It should be noted that attempting to change the data block size via
    thin-pool table reload will be ignored as a side-effect of the thin-pool
    handover that the thin-pool target does during thin-pool table reload.
    
    Here is an example outcome of attempting to load a thin-pool table that
    reduced the thin-pool's data block size from 1024K to 512K.
    
    Before:
    kernel: device-mapper: thin: 253:4: growing the data device from 204800 to 409600 blocks
    
    After:
    kernel: device-mapper: thin metadata: changing the data block size (from 2048 to 1024) is not supported
    kernel: device-mapper: table: 253:4: thin-pool: Error creating metadata object
    kernel: device-mapper: ioctl: error adding target to table
    
    Signed-off-by: default avatarMike Snitzer <snitzer@redhat.com>
    Acked-by: default avatarJoe Thornber <ejt@redhat.com>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    4bbfb80c