Re: Issues with "x86, um: switch to generic fork/vfork/clone" commit

From: Al Viro
Date: Sun Jan 20 2013 - 21:30:00 EST


On Sun, Jan 20, 2013 at 05:40:28PM -0800, Linus Torvalds wrote:
> On Sun, Jan 20, 2013 at 5:22 PM, Al Viro <viro@xxxxxxxxxxxxxxxxxx> wrote:
> >
> > Anyway, that's a separate story - semctl(2) is going to be ugly, no matter
> > what we do, but the rest of those guys doesn't have to. How about the
> > following (completely untested):
>
> Hmm. Looks like the RightThing(tm) to me.
>
> The thing that stands out that I question the value of that
> HAVE_SYSCALL_WRAPPERS thing. Is there any reason we don't just make
> all architectures use it? What's the downside? I'm not sure I see the
> point of the non-wrapper version.

Neither do I, to be honest. It might be saving us a few cycles on
some architectures, but I'd like to see examples of that. amd64
doesn't seem to be one, at least...

FWIW, there's another bit of ugliness around that area - all these
#define __SC_BLAH3, etc., all of the same form. This stuff begs for
something like
#define __MAP1(m,t,a) m(t,a)
#define __MAP2(m,t,a,...) m(t,a) __MAP1(m,__VA_ARGS__)
#define __MAP3(m,t,a,...) m(t,a) __MAP2(m,__VA_ARGS__)
#define __MAP4(m,t,a,...) m(t,a) __MAP3(m,__VA_ARGS__)
#define __MAP5(m,t,a,...) m(t,a) __MAP4(m,__VA_ARGS__)
#define __MAP6(m,t,a,...) m(t,a) __MAP5(m,__VA_ARGS__)
#define __MAP(n,...) __MAP##n(__VA_ARGS__)
with __MAP(x,__SC_DECL,__VA_ARGS__) instead of __SC_DECL##x(__VA_ARGS__)
etc. in users...
--
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/