On Thu, 7 Jul 2011, Andi Kleen wrote: > Christoph Lameter <cl@xxxxxxxxx> writes: > > > > +#ifdef __HAVE_ARCH_INV_MEMSCAN > > +void *inv_memscan(void *addr, int c, size_t size) > > +{ > > + if (!size) > > + return addr; > > + asm volatile("repz; scasb\n\t" > > This will just do the slow byte accesses again internally. > scasb is not normally very optimized in microcode as far > as I know. > > Also rep has quite some startup overhead which makes > it a bad idea for small sizes (<16-20 or so) > > I would stay with the C version. I bet that one is > faster. If the c code is such an improvement then memscan and other implementations can be accellerated in the same way. That would be useful in general. We can get rid of the implementation for memscan and friends in x86 arch code. -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>