libblkid: blkid_bufinfo() fails on 32bit

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

Looks like this commit breaks 32bit/i386 systems:

----
commit a674a0ab03660b1df777e69436b2dc832b6f8681
Author: Karel Zak <kzak@xxxxxxxxxx>
Date:   Tue Sep 22 15:37:26 2015 +0200

    libblkid: use mmap() rather than read()
----

 libblkid/src/probe.c:638: mmap_buffer: Assertion `map_off + map_len >= real_off + len' failed.


I can avoid that assert if I change the type of map_len in blkid_bufinfo().

-   size_t map_len;
+   blkid_loff_t map_len;

but it still looks broken, see this debug output


libblkid: LOWPROBE: --> starting probing loop [SUBLKS idx=-1]
libblkid: LOWPROBE: [0] linux_raid_member:
libblkid: LOWPROBE:     call probefunc()
libblkid:   BUFFER:     mapping end of the device
libblkid:   BUFFER:     mmap  0xf7321000: off=4112515072, len=25771900928 (6291968 pages)
                                                      ^^^^^^^
   shouldn't we only mmap about 2M?

libblkid:   BUFFER:     reuse 0xf7321000: off=4112515072 len=25771900928 (for off=29884407808 len=256)
libblkid:   BUFFER:     mapping begin of the device
libblkid:   BUFFER:     mmap  0xf7121000: off=0, len=2097152 (512 pages)
libblkid:   BUFFER:     reuse 0xf7121000: off=0 len=2097152 (for off=4096 len=256)

cu,
Rudi
--
To unsubscribe from this list: send the line "unsubscribe util-linux" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux