On 09 May 03:28 PM, Jason Gunthorpe wrote: > > > I gave this a try in order to answer Arnd's performance > > question. First of all, the patch seems wrong. I guess it's because > > readsl reads 4-bytes pieces, instead of 8-bytes. > > > > This patch below is tested (but not completely, see below) and works: > > Compilers are better now, I think you can just ditch the weirdness: > [..] > > The below gives: > > c8: ea000002 b d8 <orion_nand_read_buf+0x84> > cc: e5dc0000 ldrb r0, [ip] > d0: e7c30001 strb r0, [r3, r1] > d4: e2811001 add r1, r1, #1 > d8: e1510002 cmp r1, r2 > > Which looks the same as the asm version to me. >
Nice! It wasn't really needed but since I have the board here: # time nanddump /dev/mtd5 -f /dev/null -q real 0m 5.82s user 0m 0.20s sys 0m 5.60s Jason: Care to submit a proper patch? On 08 May 04:56 PM, Arnd Bergmann wrote: > Ok, that is a noticeable difference. For scale, what is the size of that > partition? The board is Openblocks A6, running mainline. # cat /proc/mtd dev: size erasesize name mtd0: 00090000 00004000 "uboot" mtd1: 00044000 00004000 "env" mtd2: 00024000 00004000 "test" mtd3: 00400000 00004000 "conf" mtd4: 01d20000 00004000 "linux" mtd5: 01dec000 00004000 "user" -- Ezequiel GarcĂa, Free Electrons Embedded Linux, Kernel and Android Engineering http://free-electrons.com -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/