RFR: 8311846: Resolve duplicate 'Thread' related symbols with JDK static linking

Coleen Phillimore coleenp at openjdk.org
Fri Jan 19 14:03:30 UTC 2024


On Wed, 17 Jan 2024 00:14:58 GMT, Jiangli Zhou <jiangli at openjdk.org> wrote:

> Please review this PR with a simple solution for resolving duplicate `Thread` symbol issue. In https://github.com/openjdk/jdk/pull/14808 comments, there was an alternative suggestion to redefine the symbol at build time, such as  using`-DThread=HotSpotThread`. That would not address issues when symbol were references as string literals. https://github.com/openjdk/jdk/pull/14808 also discussed using namespace for hotspot code, which can have multiple benefits/motivations. We could explore further using namespace with more consensus on that approach.
> 
> Contributed by Chuck Rasbold and @jianglizhou.

You could support one build by adding something like -DSUPPORTS_STATIC_LINK for both .so and .a builds for Google,  then use that to protect the renaming.

I don't know how bad "namespace hotspot" would be for debugging.  At least for some of the common names.  I suppose breakpoints would have to be specified in gdb as break at hotspot::Thread::is_owning_thread or something like that, and with a using namespace hotspot, it wouldn't be visible looking at the source code in that form.

-------------

PR Comment: https://git.openjdk.org/jdk/pull/17456#issuecomment-1900475932


More information about the serviceability-dev mailing list