]> git.baikalelectronics.ru Git - kernel.git/commit
dm: fix to_sector() for 32bit
authorNeilBrown <neil@brown.name>
Sun, 6 Jan 2019 10:06:25 +0000 (21:06 +1100)
committerMike Snitzer <snitzer@redhat.com>
Tue, 5 Mar 2019 19:48:52 +0000 (14:48 -0500)
commit2fc70e6e17411db3406816400d2c310876a40b32
tree73c7dc72106541c696fa61e40c2484eddd443987
parent4c6b2d5623e619f8d54d4c451b3b355b78604420
dm: fix to_sector() for 32bit

A dm-raid array with devices larger than 4GB won't assemble on
a 32 bit host since _check_data_dev_sectors() was added in 4.16.
This is because to_sector() treats its argument as an "unsigned long"
which is 32bits (4GB) on a 32bit host.  Using "unsigned long long"
is more correct.

Kernels as early as 4.2 can have other problems due to to_sector()
being used on the size of a device.

Fixes: d09c0eadab00 ("dm raid: add support for the MD RAID0 personality")
cc: stable@vger.kernel.org (v4.2+)
Reported-and-tested-by: Guillaume Perréal <gperreal@free.fr>
Signed-off-by: NeilBrown <neil@brown.name>
Signed-off-by: Mike Snitzer <snitzer@redhat.com>
include/linux/device-mapper.h