busybox/miscutils
Richard Genoud cbf3bfa57a nanddump: correct rounding to next page (lead to infinite loop)
The rounding to next page formula was wrong:
ex: (len | ~(meminfo->writesize - 1)) + 1;
len=128K
writesize=4K
(len | ~(meminfo->writesize - 1)) + 1 => 4 294 963 201 ?!

correct rounding formula:
((len - 1) | (meminfo->writesize - 1)) + 1 => 128K
len = 130K
((len - 1) | (meminfo->writesize - 1)) + 1 => 132K

modprobe nandsim parts="20,20" badblocks="22,23"

without patch:
nanddump  /dev/mtd1 | wc -c
[...] infinite loop

with the patch:
nanddump /dev/mtd1 | wc -c
327680

Signed-off-by: Richard Genoud <richard.genoud@gmail.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2014-06-25 16:37:37 +02:00
..
2013-10-08 14:53:29 +02:00
2013-01-18 13:30:13 +01:00
2013-11-26 12:12:27 +01:00
2013-03-15 00:42:39 +01:00
2013-01-28 12:26:29 +01:00
2013-01-14 01:34:48 +01:00
2014-05-02 07:18:55 +02:00
2011-05-30 23:00:47 +02:00
2014-03-03 15:14:26 +01:00
2011-10-28 14:07:44 +02:00
2013-01-15 13:58:01 +01:00
2013-01-15 13:58:01 +01:00
2013-08-04 21:07:20 +02:00
2013-10-08 14:53:29 +02:00