Re: [PATCH -tip] x86: headers - fix export private data to userspace

Cyrill Gorcunov
2009-01-13T19:13:12Z

[H. Peter Anvin - Tue, Jan 13, 2009 at 11:03:03AM -0800]
| Cyrill Gorcunov wrote:
| > | > |
| > | > | You can introduce symbols into the general namespace if *and only if*
| > | > | they are in a header file that is invoked directly by the user. In
| > | > | other words, such a header file is unusable by libc, but setup.h doesn't
| > | > | contain anything needed by libc in the first place.
| > | > |
| > | > | -hpa
| > | > |
| > | >
| > | > So we could just fence it by __KERNEL__?
| > | >
| > |
| > | We might, as userspace shouldn't need COMMAND_LINE_SIZE anyway (see
| > | other post), but I'm rather confused as how you got that from what I
| > | wrote above.
| > |
| >
| > The thing is that kernel headers are not only touched by libc.
| > Someone could write a program and include setup.h there.
| > Or I translated you wrong :)
| >
|
| My whole point was that there are classes of symbols which may be
| legitimately used by userspace *applications*, but not by libc. Those
| can live in the general namespace since they are included by explicit
| user command.
|
| -hpa
|
| --
| H. Peter Anvin, Intel Open Source Technology Center
| I work for Intel. I don't speak on their behalf.
|

That is why I didn't fence COMMAND_LINE_SIZE by __KERNEL__ initialy
and thought about if LILO could had been using it. Then I found a
post in old-dated LKML that LILO has its own definition for
such a symbol, then I asked you about boot protocol. I just
didn't understand why you're confused but nevermind :)

- Cyrill -