Re: [PATCH] Add memcpy_cachebypass, a copy routine that tries to keep cache pressure down

From: Christoph Hellwig
Date: Wed Jul 12 2006 - 04:03:50 EST


On Tue, Jul 11, 2006 at 02:57:51PM -0700, David Miller wrote:
> From: Bryan O'Sullivan <bos@xxxxxxxxxxxxxx>
> Date: Tue, 11 Jul 2006 14:30:01 -0700
>
> > The last time I tried submitting a patch that followed that style (for
> > __iowrite_copy*), it got NAKed for propagating preprocessor abuse (Linus
> > roundly flamed someone for a similar patch a few weeks before I
> > submitted mine), and Andrew suggested that I use the same scheme that
> > this patch uses.
> >
> > So whose instructions do I follow? Yours of today, or Andrew's and
> > Linus's of a few months ago?
>
> I didn't realize there was change afoot in this area, sorry.
> I was just striving for consistency with current practice.
>
> If Andrew suggested to use weak, that's fine, but it's kind
> of erroneous for something like lib/string.c because that
> gets built into a library lib.a file, which resolves any
> unresolved references.
>
> When the kernel is linked, lib.a implementations only get brought in
> if they are not already resolved by definitions present in the other
> objects of the kernel image.
>
> Weak makes more sense when dealing with object files, not archives.

Weak is generally the wrong thing for what we do in kernel land. We don't
even want to build the generic version if we have a better one. It also
makes it really hard to find out what exactly in use. Linus only argued
against __ARCH_HAVE_FOO, but his suggested replacemenet is:

#ifndef foo
#define foo generic_version
#endif
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/