JDK-8276572: Fake libsyslookup.so library causes tooling issues#6245
JDK-8276572: Fake libsyslookup.so library causes tooling issues#6245gnu-andrew wants to merge 1 commit intoopenjdk:masterfrom
Conversation
|
👋 Welcome back andrew! A progress list of the required criteria for merging this PR into |
|
@gnu-andrew The following label will be automatically applied to this pull request:
When this pull request is ready to be reviewed, an "RFR" email will be sent to the corresponding mailing list. If you would like to change these labels, use the /label pull request command. |
shipilev
left a comment
There was a problem hiding this comment.
This makes sense to me, but @mcimadamore should ack this.
mcimadamore
left a comment
There was a problem hiding this comment.
Looks ok. As long as we don't introduce more dependencies.
One question: would introducing a static function (so, not visible in the resulting DLL) be good enough?
|
@gnu-andrew This change now passes all automated pre-integration checks. ℹ️ This project also has non-automated pre-integration requirements. Please see the file CONTRIBUTING.md for details. After integration, the commit message for the final commit will be: You can use pull request commands such as /summary, /contributor and /issue to adjust it as needed. At the time when this comment was updated there had been 30 new commits pushed to the
As there are no conflicts, your changes will automatically be rebased on top of these commits when integrating. If you prefer to avoid this automatic rebasing, please check the documentation for the /integrate command for further details. ➡️ To integrate this PR with the above commit message to the |
|
Most likely bad idea, but isnt there an threat, that the method will be dropped by optimising compiler? |
It is a possibility that the function will be dropped, but maybe worth a try. |
I did wonder about this too. I'll have to check it still resolves the issues we see before updating the PR. |
|
Ok, if it works, it's still going to be messy, as we have to disable this warning: |
|
What do we have to lose if we have the non-static method in this library? I think it is less risky and intrusive than disabling warnings, making sure linkers are not removing the unused definiton, etc. IIRC, some toolchains (S390?) have linkers configured to strip unused symbols. Let's go with the PR in its current form. |
|
Shouldn't the single volatile variable around prevent that? |
|
For the records, I'm fine with proposed patch - I asked questions about possible alternatives. It seems like the alternatives work 50%, so let's go with proposed approach. |
|
Thanks. I agree the original feels safer and I'd rather avoid the ugly mess I needed with pragmas to get it to compile with an unused static function. |
|
/integrate |
|
Going to push as commit a472433.
Your commit was automatically rebased without conflicts. |
|
@gnu-andrew Pushed as commit a472433. 💡 You may see a message that your pull request was closed with unmerged commits. This can be safely ignored. |
|
/backport 17u |
|
@gnu-andrew Unknown command |
|
/help |
|
@gnu-andrew Available commands:
|
|
Ok, I see, it has to be issued on the commit... didn't realise you could comment on such things. |
The lack of anything to compile in
syslookup.cis leading to a number of issues in our tooling, on some architectures more than others (s390x seems to be the most problematic). They expect to be able to retrieve debuginfo and compiler flags from generated .so files and fail with libsyslookup.soThis simple patch adds a dummy function to
syslookup.cso it appears more like a regular file to be compiled. I can't see this causing a problem with the symbol lookup, but we could filter it out on the Java side if need be.Progress
Issue
Reviewers
Reviewing
Using
gitCheckout this PR locally:
$ git fetch https://git.openjdk.java.net/jdk pull/6245/head:pull/6245$ git checkout pull/6245Update a local copy of the PR:
$ git checkout pull/6245$ git pull https://git.openjdk.java.net/jdk pull/6245/headUsing Skara CLI tools
Checkout this PR locally:
$ git pr checkout 6245View PR using the GUI difftool:
$ git pr show -t 6245Using diff file
Download this PR as a diff file:
https://git.openjdk.java.net/jdk/pull/6245.diff