tech-kern archive

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

Re: the __ namespace in the kernel

In article <>,
Antti Kantee  <> wrote:
>In an attempt to isolate the rump virtual kernel namespace from the
>process hosting it we now bulk-rename all the symbols to have a "rumpns"
>prefix.  This allows e.g. problib to exist both in the application and
>the "kernel".
>Unfortunately, there's a but: our toolchain generates some unresolved
>symbols which are supposed to be satisfied by linking libgcc.  Those
>cannot be renamed, or fail will result.  Luckily, almost all toolchain
>symbols are in the __ namespace.  The exceptions are _GLOBAL_OFFSET_TABLE
>and a few quirks for mips and hppa (look at src/sys/rump/Makefile.rump
>if feeling curious).
>However, there are a kernel few symbols in the __ namespace (I checked
>i386).  These are listed below.  To solve the issue, I propose simply
>to remove one underscore.  Notably, byte swap and simplelock are MD and
>shared with userspace, so if it's a sunny day outside, I might just
>let those two slide to avoid a macro crusade and/or other trickery.
>Can anyone think of any sensible reasons to object?  We might need
>something special for pcc, but I don't see why the pcc toolchain couldn't
>be fitted under a similar __ regime.
>__ symbols:

I think these are very few, so I am fine to remove one underscore.


Home | Main Index | Thread Index | Old Index