dm cache: fix corruption seen when using cache > 2TB
authorJoe Thornber <ejt@redhat.com>
Thu, 9 Feb 2017 16:46:18 +0000 (11:46 -0500)
committerMike Snitzer <snitzer@redhat.com>
Thu, 16 Feb 2017 17:57:10 +0000 (12:57 -0500)
commitca763d0a53b264a650342cee206512bc92ac7050
tree7582bbeb5ea5e125756f3cbc1269501620cf4ba5
parent105db5991240cb2675f193589130ef0c8a4f70fe
dm cache: fix corruption seen when using cache > 2TB

A rounding bug due to compiler generated temporary being 32bit was found
in remap_to_cache().  A localized cast in remap_to_cache() fixes the
corruption but this preferred fix (changing from uint32_t to sector_t)
eliminates potential for future rounding errors elsewhere.

Cc: stable@vger.kernel.org
Signed-off-by: Joe Thornber <ejt@redhat.com>
Signed-off-by: Mike Snitzer <snitzer@redhat.com>
drivers/md/dm-cache-target.c