• Joe Thornber's avatar
    dm cache: set/clear the cache core's dirty_bitset when loading mappings · 449b668c
    Joe Thornber authored
    When loading metadata make sure to set/clear the dirty bits in the cache
    core's dirty_bitset as well as the policy.
    
    Otherwise the cache core is unaware that any blocks were dirty when the
    cache was last shutdown.  A very serious side-effect being that the
    cleaner policy would therefore never be tasked with writing back dirty
    data from a cache that was in writeback mode (e.g. when switching from
    smq policy to cleaner policy when decommissioning a writeback cache).
    
    This fixes a serious data corruption bug associated with writeback mode.
    Signed-off-by: default avatarJoe Thornber <ejt@redhat.com>
    Signed-off-by: default avatarMike Snitzer <snitzer@redhat.com>
    449b668c
dm-cache-target.c 84.9 KB