tech-kern archive

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

Re: Keep local symbols of rump libraries



On Mon, Apr 10, 2017 at 07:22:45PM +0900, Ryota Ozaki wrote:
> Hi,
> 
> I'm using ATF tests running rump kernels (rump_server)
> for development and debugging. When a rump kernel gets
> panic, it dumps a core file from which we can obtain
> a backtrace by using gdb.
> 
> Unfortunately local symbols (i.e., static functions)
> in a backtrace are unresolved because they are stripped
> by the linker (and objdump). That makes debugging a bit
> difficult.
> 
> The patch introduces a compile option for rump kernels
> called RUMP_KEEPSYMBOLS to keep such symbols:
>   http://www.netbsd.org/~ozaki-r/rumplibs-keep-symbols.diff
> 
> The option is disabled by default to not increase
> the size of all rump libraries.
> 
> I'm not so familiar with the NetBSD build system and
> Makefiles, so the patch may be wrong or clumsy.
> 
> Any comments?

I've been meaning to ask about something similar to this
but for everything in the build (libraries and commands)
for the benefit of dtrace.  dtrace "ustack()" stack traces
are similarly less useful without the static symbols.

my patch for that was similar to yours, but I changed the
"-Wl,-x" to "-Wl,-X" rather than removing the option entirely.
for OBJCOPYLIBFLAGS I did what you did, though I suppose using "-X"
there too would have been more consistent.

if we had an option for preserving static symbols for everything,
would you still want a rump-library-specific option?

-Chuck


Home | Main Index | Thread Index | Old Index