https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=241728

--- Comment #25 from Brandon Bergren <bdra...@freebsd.org> ---
See also https://reviews.freebsd.org/D22317

The pcpu and vnet linker sets (implemented as custom elf sections) depend on
being able to be manually relocated by the kernel linker to an arbitrary
location to actually work, so we can't allow relaxing references into
displacement-via-r2 because it's not necessarily a specific distance from ".",
and in this case is not even in the same map area (the symbols get relocated
out of KVA and down to the DMAP manually by the in-kernel linker so they land
in the reserved space for the data structure, and reads/writes are required to
add a base address to get from there back up to the KVA copy)

Either we're doing a gross ABI violation or clang and lld need to not relax any
references to sections with c identifier names (i.e. the ones not starting with
a dot.)

I'm not sure which.

-- 
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
freebsd-emulation@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-emulation
To unsubscribe, send any mail to "freebsd-emulation-unsubscr...@freebsd.org"

Reply via email to