Segher Boessenkool wrote:
On Mon, Mar 02, 2020 at 11:56:05AM +0100, Rasmus Villemoes wrote:
I'm building a ppc32 kernel, and noticed that after upgrading from gcc-7
to gcc-8 all object files now end up having .eh_frame section.
Since GCC 8, we enable -fasynchronous-unwind-tables by default for
PowerPC. See https://gcc.gnu.org/r259298 .
For
vmlinux, that's not a problem, because they all get discarded in
arch/powerpc/kernel/vmlinux.lds.S . However, they stick around in
modules, which doesn't seem to be useful - given that everything worked
just fine with gcc-7, and I don't see anything in the module loader that
handles .eh_frame.
It is useful for debugging. Not many people debug the kernel like this,
of course.
I'm trying to understand if we need that. Other architectures seems to
pass -fasynchronous-unwind-tables only for the vdso, but disable it for
the kernel build. I suppose we can do the same.
If using -fno-asynchronous-unwind-tables, would crash/perf have
problems?
- Naveen