summaryrefslogtreecommitdiff
path: root/drivers/cpufreq
diff options
context:
space:
mode:
authorHeinz Mauelshagen <heinzm@redhat.com>2014-03-12 16:13:39 +0100
committerMike Snitzer <snitzer@redhat.com>2014-03-12 13:52:00 -0400
commite893fba90c09f9b57fb97daae204ea9cc2c52fa5 (patch)
tree6743c251b72ea02946b5ed6db89f876a2024335c /drivers/cpufreq
parent8b9d96666529a979acf4825391efcc7c8a3e9f12 (diff)
dm cache: fix access beyond end of origin device
In order to avoid wasting cache space a partial block at the end of the origin device is not cached. Unfortunately, the check for such a partial block at the end of the origin device was flawed. Fix accesses beyond the end of the origin device that occured due to attempted promotion of an undetected partial block by: - initializing the per bio data struct to allow cache_end_io to work properly - recognizing access to the partial block at the end of the origin device - avoiding out of bounds access to the discard bitset Otherwise, users can experience errors like the following: attempt to access beyond end of device dm-5: rw=0, want=20971520, limit=20971456 ... device-mapper: cache: promotion failed; couldn't copy block Signed-off-by: Heinz Mauelshagen <heinzm@redhat.com> Acked-by: Joe Thornber <ejt@redhat.com> Signed-off-by: Mike Snitzer <snitzer@redhat.com> Cc: stable@vger.kernel.org
Diffstat (limited to 'drivers/cpufreq')
0 files changed, 0 insertions, 0 deletions