Revision 9b1cc9f251affdd27f29fe46d0989ba76c33faf6 authored by Joe Thornber on 23 January 2015, 10:00:07 UTC, committed by Mike Snitzer on 23 January 2015, 15:57:15 UTC
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
1 parent 5164bec
File | Mode | Size |
---|---|---|
.gitignore | -rw-r--r-- | 88 bytes |
Kconfig | -rw-r--r-- | 14.1 KB |
Makefile | -rw-r--r-- | 981 bytes |
adummy.c | -rw-r--r-- | 4.0 KB |
ambassador.c | -rw-r--r-- | 66.1 KB |
ambassador.h | -rw-r--r-- | 15.8 KB |
atmtcp.c | -rw-r--r-- | 11.4 KB |
eni.c | -rw-r--r-- | 61.2 KB |
eni.h | -rw-r--r-- | 4.6 KB |
firestream.c | -rw-r--r-- | 54.0 KB |
firestream.h | -rw-r--r-- | 14.6 KB |
fore200e.c | -rw-r--r-- | 88.5 KB |
fore200e.h | -rw-r--r-- | 38.6 KB |
he.c | -rw-r--r-- | 75.9 KB |
he.h | -rw-r--r-- | 19.8 KB |
horizon.c | -rw-r--r-- | 83.8 KB |
horizon.h | -rw-r--r-- | 16.7 KB |
idt77105.c | -rw-r--r-- | 11.4 KB |
idt77105.h | -rw-r--r-- | 3.7 KB |
idt77252.c | -rw-r--r-- | 89.6 KB |
idt77252.h | -rw-r--r-- | 33.6 KB |
idt77252_tables.h | -rw-r--r-- | 44.9 KB |
iphase.c | -rw-r--r-- | 108.0 KB |
iphase.h | -rw-r--r-- | 53.4 KB |
lanai.c | -rw-r--r-- | 81.0 KB |
midway.h | -rw-r--r-- | 7.5 KB |
nicstar.c | -rw-r--r-- | 74.6 KB |
nicstar.h | -rw-r--r-- | 22.9 KB |
nicstarmac.c | -rw-r--r-- | 6.0 KB |
nicstarmac.copyright | -rw-r--r-- | 2.7 KB |
solos-attrlist.c | -rw-r--r-- | 2.2 KB |
solos-pci.c | -rw-r--r-- | 38.9 KB |
suni.c | -rw-r--r-- | 9.8 KB |
suni.h | -rw-r--r-- | 9.7 KB |
tonga.h | -rw-r--r-- | 694 bytes |
uPD98401.h | -rw-r--r-- | 11.7 KB |
uPD98402.c | -rw-r--r-- | 6.5 KB |
uPD98402.h | -rw-r--r-- | 4.4 KB |
zatm.c | -rw-r--r-- | 43.3 KB |
zatm.h | -rw-r--r-- | 3.5 KB |
zeprom.h | -rw-r--r-- | 944 bytes |
Computing file changes ...