Re: [RFC,PATCH] arch/arm: compute and export NR_syscalls

From: Mikael Pettersson
Date: Wed Aug 17 2011 - 03:28:21 EST


Will Drewry writes:
> On Tue, Aug 16, 2011 at 4:21 PM, Arnd Bergmann <arnd@xxxxxxxx> wrote:
> > On Tuesday 16 August 2011 16:14:26 Will Drewry wrote:
> >>
> >> asm-exports.c is added instead of reusing asm-offsets.c to avoid a
> >> variety of collisions (VM_EXEC, DMA_*, etc).  It is possible to use the
> >> same calls.S mechanism but add NR_syscalls to asm-offsets.c.  However,
> >> at inclusion time for generated/asm-offsets.h, conflicting defines will
> >> need to be #undef'd if !__ASSEMBLY__ since it appears that the purpose
> >> of asm-offsets.h is to safely bind C language definitions to assembly
> >> and not the reverse.
> >>
> >> - Is this approach palatable?
> >> - Should I resend only when paired with the other ftrace-needed patches?
> >
> > This seems overly complex, compared to a one-line change adding the symbol
> > to asm/unistd.h. The only other architecture that uses an approach
> > like the one you have posted is x86-64, and it's simpler there
> > because it can easily be done in asm-offsets.c there without the need
> > to create another helper.
>
> Agreed!
>
> I proposed this approach based solely on prior threads I've seen. E.g.,
> - https://lkml.org/lkml/2007/6/1/427
> (don't just #define)
> - https://lkml.org/lkml/2009/8/27/280
> (todo: x86-32 to move to x86-64)
>
> If a single line #define is good enough, then it certainly works for me.

Yes, the one-line #define NR_syscalls in unistd.h is a perfectly adequate,
if not entirely elegant, solution. Adding asm-export.c just for this is
waaay overkill.

/Mikael
--
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/