kpartx: fix dos partition rollover error
authorBenjamin Marzinski <bmarzins@redhat.com>
Tue, 31 May 2016 23:16:50 +0000 (18:16 -0500)
committerChristophe Varoqui <christophe.varoqui@opensvc.com>
Fri, 3 Jun 2016 06:53:29 +0000 (08:53 +0200)
commit5c086f9047e41b4fd1d10765c70aa5a0aed27ac1
tree966dfaa05893f5402f6ea638f6441bc5a8b72435
parentb9c1926846fac72a4d702f307721b11033f04e00
kpartx: fix dos partition rollover error

dos partitions are limited to 2^32 sectors. However these do not have to
be 512 byte sectors, which is what device-mapper tables use.  kpartx
stores the dos sectors in a 32 uint.  This means that on a 4k sector size
device with large enough partitions, when kpartx multiplies the
dos sector count by the sector size multiplier, it can rollover before
it gets stored in 64 bit slice sector count. This patch just changes the
multiplier to a 64 bit uint to match the slice sector count, and avoid
the rollover.

Signed-off-by: Benjamin Marzinski <bmarzins@redhat.com>
kpartx/dos.c