Re: [PATCH] sparse: Add GCC pre-defined macros for user-space

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sun, Aug 16, 2009 at 10:50:46AM -0700, Christopher Li wrote:
> On Sun, Aug 16, 2009 at 5:41 AM, Josh Triplett<josh@xxxxxxxxxxxxxxxx> wrote:
> > On Sun, Aug 16, 2009 at 02:05:33PM +0300, Pekka Enberg wrote:
> >> Of course. Here's the final patch. *fingers crossed*
> >
> > Looks good to me.
> >
> > Acked-by: Josh Triplett <josh@xxxxxxxxxxxxxxxx>
> >
> 
> Looks good to me too. I will apply.
> 
> The linux kernel has a STRING macro. I will rename to match
> that if nobody objects.

Matching Linux seems sensible, but I don't see that macro in any general
code, just a bunch of local defines with various names.  A few quick
greps on current git master turned up at least:

Documentation/trace/ftrace.txt:#define _STR(x) #x
Documentation/trace/ftrace.txt-#define STR(x) _STR(x)
arch/cris/boot/tools/build.c:#define STRINGIFY(x) #x
arch/cris/include/arch-v10/arch/irq.h:#define __STR(x) #x
arch/cris/include/arch-v10/arch/irq.h-#define STR(x) __STR(x)
arch/cris/include/arch-v32/arch/hwregs/supp_reg.h-#ifndef STRINGIFYFY
arch/cris/include/arch-v32/arch/hwregs/supp_reg.h:#define STRINGIFYFY(i) #i
arch/cris/include/arch-v32/arch/irq.h:#define STR2(x) #x
arch/cris/include/arch-v32/arch/irq.h-#define STR(x) STR2(x)
arch/m68k/include/asm/entry_mm.h-#define STR(X) STR1(X)
arch/m68k/include/asm/entry_mm.h:#define STR1(X) #X
arch/m68k/lib/checksum.c-#define STR(X) STR1(X)
arch/m68k/lib/checksum.c:#define STR1(X) #X
arch/mips/include/asm/mipsregs.h-#ifndef __STR
arch/mips/include/asm/mipsregs.h:#define __STR(x) #x
arch/mips/include/asm/sim.h:#define __str2(x) #x
arch/mips/include/asm/sim.h-#define __str(x) __str2(x)
arch/mips/kernel/unaligned.c-#define STR(x)  __STR(x)
arch/mips/kernel/unaligned.c:#define __STR(x)  #x
arch/powerpc/boot/reg.h:#define __stringify_1(x)        #x
arch/powerpc/boot/reg.h-#define __stringify(x)          __stringify_1(x)
arch/sh/include/cpu-sh5/cpu/registers.h:#define __str(x)  #x
arch/um/drivers/mconsole_user.c:#define STRINGX(x) #x
arch/um/drivers/mconsole_user.c-#define STRING(x) STRINGX(x)
arch/um/sys-i386/shared/sysdep/kernel-offsets.h:#define STR(x) #x
arch/um/sys-x86_64/shared/sysdep/kernel-offsets.h:#define DEFINE_STR1(x) #x
arch/x86/kernel/machine_kexec_32.c:#define __STR(X) #X
arch/x86/kernel/machine_kexec_32.c-#define STR(X) __STR(X)

And probably more.  (Also, the above didn't necessarily capture both macros
from each pair.)

So, I don't see any particular consistency here that we can follow, other than
that the macro should probably have "str" in it somewhere. :)  And if we have
to choose, I think STRINGIFY seems more descriptive than just STRING.

- Josh Triplett
--
To unsubscribe from this list: send the line "unsubscribe linux-sparse" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Newbies FAQ]     [LKML]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Trinity Fuzzer Tool]

  Powered by Linux