On 12/15/2017 07:27 AM, Scott Bauer wrote: > [snip] > On Wed, Dec 13, 2017 at 04:11:44PM -0800, Randy Dunlap wrote: >> >> >= >> > > Thanks, good catch. > > >>> + tot_sec = i_size_read(bbdev->bd_inode) >> SECTOR_SHIFT; >>> + mod = tot_sec % target->chunk_sectors; >> >> Did you build this on 32-bit also? Is that '%' OK on 32-bit? > > I've looked at this a bit and still can't figure out why this > modulo operation would operate differently on a 32 versus a 64 > bit platform? I know sector_t is config dependent but the > sector_t should be promoted to 64 bit width during the modulo > operation. > > Are you wondering whether sector_t is the right type for any of > the math in this file? Perhaps we should be safe and only use > u64s? Just wondering if it causes a call to some glibc __mod() function and if so, the code should be using sector_div() -- oops, that's a divide and you want a modulus. Oh well, we can address it if it becomes a problem. -- ~Randy -- dm-devel mailing list dm-devel@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/dm-devel