Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

8300079: SIGSEGV in LibraryCallKit::inline_string_copy due to constant NULL src argument #1297

Closed
wants to merge 1 commit into from

Conversation

GoeLin
Copy link
Member

@GoeLin GoeLin commented Apr 26, 2023

I backport this for parity with 17.0.8-oracle.

Does not apply because
"8275201: C2: hide klass() accessor from TypeOopPtr and typeKlassPtr subclasses" is not in 17.

The problem fixed by this change is that isa_aryptr() can return NULL.
I checked all occurances of this call. Many of them are checked for NULL which
was missing in head before this fix. For inline_string_copy() the check was missing
in 17.
For many of the other checks, the result is assigned to a variable and then checked,
but then isa_aryptr() is called again. I changed the code to use the checked variable.
I hope this makes clear that the check may not be removed :)


Progress

  • Change must be properly reviewed (1 review required, with at least 1 Reviewer)
  • Change must not contain extraneous whitespace
  • Commit message must refer to an issue

Issue

  • JDK-8300079: SIGSEGV in LibraryCallKit::inline_string_copy due to constant NULL src argument

Reviewers

Reviewing

Using git

Checkout this PR locally:
$ git fetch https://git.openjdk.org/jdk17u-dev.git pull/1297/head:pull/1297
$ git checkout pull/1297

Update a local copy of the PR:
$ git checkout pull/1297
$ git pull https://git.openjdk.org/jdk17u-dev.git pull/1297/head

Using Skara CLI tools

Checkout this PR locally:
$ git pr checkout 1297

View PR using the GUI difftool:
$ git pr show -t 1297

Using diff file

Download this PR as a diff file:
https://git.openjdk.org/jdk17u-dev/pull/1297.diff

Webrev

Link to Webrev Comment

@bridgekeeper
Copy link

bridgekeeper bot commented Apr 26, 2023

👋 Welcome back goetz! A progress list of the required criteria for merging this PR into master will be added to the body of your pull request. There are additional pull request commands available for use with this pull request.

@openjdk openjdk bot changed the title Backport 45e4e00981ef8b4bf143afce0889698319273c1d 8300079: SIGSEGV in LibraryCallKit::inline_string_copy due to constant NULL src argument Apr 26, 2023
@openjdk
Copy link

openjdk bot commented Apr 26, 2023

This backport pull request has now been updated with issue from the original commit.

@openjdk openjdk bot added backport rfr Pull request is ready for review labels Apr 26, 2023
@mlbridge
Copy link

mlbridge bot commented Apr 26, 2023

Webrevs

@openjdk
Copy link

openjdk bot commented Apr 26, 2023

@GoeLin Please do not rebase or force-push to an active PR as it invalidates existing review comments. Note for future reference, the bots always squash all changes into a single commit automatically as part of the integration. See OpenJDK Developers’ Guide for more information.

Copy link
Contributor

@TheRealMDoerr TheRealMDoerr left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. isa_aryptr() is used quite often! I hope that it won't break again in the future.

@openjdk
Copy link

openjdk bot commented Apr 26, 2023

@GoeLin 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:

8300079: SIGSEGV in LibraryCallKit::inline_string_copy due to constant NULL src argument

Reviewed-by: mdoerr

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 1 new commit pushed to the master branch:

  • 243e643: 8306768: CodeCache Analytics reports wrong threshold

Please see this link for an up-to-date comparison between the source branch of this pull request and the master branch.
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 master branch, type /integrate in a new comment.

@openjdk openjdk bot added the ready Pull request is ready to be integrated label Apr 26, 2023
@GoeLin
Copy link
Member Author

GoeLin commented Apr 27, 2023

Pre-submit failure: asm download failed wget exited with exit code 8
Unrelated.

@GoeLin
Copy link
Member Author

GoeLin commented Apr 27, 2023

/integrate

@openjdk
Copy link

openjdk bot commented Apr 27, 2023

Going to push as commit 52324b5.
Since your change was applied there have been 5 commits pushed to the master branch:

  • ac823d3: 8306664: GHA: Update MSVC version to latest stepping
  • da740fa: 8302595: use-after-free related to GraphKit::clone_map
  • 790802b: 8293858: Change PKCS7 code to use default SecureRandom impl instead of SHA1PRNG
  • 394a756: 8254711: Add java.security.Provider.getService JFR Event
  • 243e643: 8306768: CodeCache Analytics reports wrong threshold

Your commit was automatically rebased without conflicts.

@openjdk openjdk bot added the integrated Pull request has been integrated label Apr 27, 2023
@openjdk openjdk bot closed this Apr 27, 2023
@openjdk openjdk bot removed ready Pull request is ready to be integrated rfr Pull request is ready for review labels Apr 27, 2023
@openjdk
Copy link

openjdk bot commented Apr 27, 2023

@GoeLin Pushed as commit 52324b5.

💡 You may see a message that your pull request was closed with unmerged commits. This can be safely ignored.

@GoeLin GoeLin deleted the goetz_backport_8300079 branch April 27, 2023 10:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backport integrated Pull request has been integrated
2 participants