I'm dropping this one just to be consistent, although for memset() it's possibly a bit more reasonable to fall back on some default. But probably not. memcpy and memset really are *so* special that these generic versions should be considered to be "stupid placeholders for bringup, and nothing more". On Tue, Sep 7, 2021 at 7:58 PM Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> wrote: > > On a RISC-V machine the speed goes from 140 Mb/s to 241 Mb/s, and this the > binary size increase according to bloat-o-meter: I also react to the benchmark numbers: RISC-V already has #define __HAVE_ARCH_MEMSET #define __HAVE_ARCH_MEMCPY #define __HAVE_ARCH_MEMMOVE in its <asm/string.h> file, so these are just odd. Did you benchmark these generic functions on their own, rather than the ones that actually get *used*? Linus