lkml.org 
[lkml]   [2008]   [Oct]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [git pull] x86 updates for v2.6.28, phase #1


On Fri, 10 Oct 2008, Ingo Molnar wrote:
>
> Vegard Nossum (3):
> x86: consolidate header guards
> x86: consolidate header guards

Ok, so I pulled phase 1, but quite frankly, I think this was utter crap.
Why the hell did this go in?

The #1 "argument" for this was:

1. No leading underscore. Names with leading underscores are reserved.

but what the _hell_ do you think kernel header files are? They are system
header files, and they _should_ use the reserved name-space.

Quite frankly, it's entirely possible that some crazy - but perfectly
correct - user space program does something like

#include <sys/types.h>

int ASM_X86__TYPES_H = 1;

and the whole point in using underscores in system header files is that
those names are reserved TO THE SYSTEM, so that normal portable programs
never need to worry about their choice of names.

You just broke this. For no good reason. Just to make things uglier, and
just because people apparently don't understand _why_ leading underscores
are special. They are special exactly _because_ they are reserved for
system use, and there is little less "systemy" than the headers exported
by the kernel.

And yes, yes, we could add the f*cking things back when we export them as
header files, but what's the point, really? And no, I'm not guaranteeing
that we're being super-careful about namespace issues in all kernel
headers that can get exported to user space, but we _try_.

Linus


\
 
 \ /
  Last update: 2008-10-10 17:19    [W:0.127 / U:0.008 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site