summaryrefslogtreecommitdiff
path: root/drivers/md/dm-cache-target.c
diff options
context:
space:
mode:
authorJoe Thornber <ejt@redhat.com>2015-01-23 13:00:07 +0300
committerMike Snitzer <snitzer@redhat.com>2015-01-23 18:57:15 +0300
commit9b1cc9f251affdd27f29fe46d0989ba76c33faf6 (patch)
treec5e8994e4aae91bc1da322c61051ad25ecd97359 /drivers/md/dm-cache-target.c
parent5164bece1673cdf04782f8ed3fba70743700f5da (diff)
downloadlinux-9b1cc9f251affdd27f29fe46d0989ba76c33faf6.tar.xz
dm cache: share cache-metadata object across inactive and active DM tables
If a DM table is reloaded with an inactive table when the device is not suspended (normal procedure for LVM2), then there will be two dm-bufio objects that can diverge. This can lead to a situation where the inactive table uses bufio to read metadata at the same time the active table writes metadata -- resulting in the inactive table having stale metadata buffers once it is promoted to the active table slot. Fix this by using reference counting and a global list of cache metadata objects to ensure there is only one metadata object per metadata device. Signed-off-by: Joe Thornber <ejt@redhat.com> Signed-off-by: Mike Snitzer <snitzer@redhat.com> Cc: stable@vger.kernel.org
Diffstat (limited to 'drivers/md/dm-cache-target.c')
0 files changed, 0 insertions, 0 deletions