I find a whole bunch more arm symbol issues that need resolving, and
wondering what the best fix is.

Previously, with the __aeabi_* symbols like __aeabi_memcmp which are
used by both the kernel and libc, I changed these not to be built for
_RUMPKERNEL as it can pick them up from libc instead.

Without this you get duplicated symbols in libc and librump so you get
link errors (only generally if you use the symbols, I now have a test
though so I picked up more).

I found a whole lot more symbols though, eg everything using the macro
CRT_ALIAS in arm eg __atomic_fetch_xor_1 etc. I have a patch to not
build these for rump kernel builds, but it occurred to me that this
could cause issues if you build a mismatched kernel and libc if these
symbols have changed. Is this an issue and do we want to support it?

The alternative is namespacing all these symbols into rumpns_ - they
currently arent as __ symbols are not namespaced.

This mainly seems to be an issue on arm, and maybe aarch64 and m68k.

Reply via email to