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

8269175: [macosx-aarch64] wrong CPU speed in hs_err file #5916

Closed
wants to merge 2 commits into from

Conversation

gerard-ziemski
Copy link

@gerard-ziemski gerard-ziemski commented Oct 12, 2021

macOS does not provide CPU speed for M1, but we currently try to report it in hs_err log file:

Host: gerard-mac, "Macmini9,1" arm64 1 MHz, 8 cores, 16G, Darwin 20.5.0, macOS 11.4 (20F71)

and end up with a bogus "1MHz" value, so we will simply skip the CPU speed from now on for M1 machines:

Host: gerard-mac, "Macmini9,1" arm64, 8 cores, 16G, Darwin 20.5.0, macOS 11.4 (20F71)


Progress

  • Change must not contain extraneous whitespace
  • Commit message must refer to an issue
  • Change must be properly reviewed

Issue

  • JDK-8269175: [macosx-aarch64] wrong CPU speed in hs_err file

Reviewers

Reviewing

Using git

Checkout this PR locally:
$ git fetch https://git.openjdk.java.net/jdk pull/5916/head:pull/5916
$ git checkout pull/5916

Update a local copy of the PR:
$ git checkout pull/5916
$ git pull https://git.openjdk.java.net/jdk pull/5916/head

Using Skara CLI tools

Checkout this PR locally:
$ git pr checkout 5916

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

Using diff file

Download this PR as a diff file:
https://git.openjdk.java.net/jdk/pull/5916.diff

@bridgekeeper
Copy link

@bridgekeeper bridgekeeper bot commented Oct 12, 2021

👋 Welcome back gziemski! 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
Copy link

@openjdk openjdk bot commented Oct 12, 2021

@gerard-ziemski The following label will be automatically applied to this pull request:

  • hotspot-runtime

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.

@openjdk openjdk bot added the hotspot-runtime label Oct 12, 2021
@gerard-ziemski gerard-ziemski changed the title do not report CPU speed on M1, because macOS does not provide it 8269175: do not report CPU speed on M1, because macOS does not provide it Oct 12, 2021
@gerard-ziemski gerard-ziemski changed the title 8269175: do not report CPU speed on M1, because macOS does not provide it 8269175: [macosx-aarch64] wrong CPU speed in hs_err file Oct 12, 2021
@gerard-ziemski gerard-ziemski marked this pull request as ready for review Oct 13, 2021
@openjdk openjdk bot added the rfr label Oct 13, 2021
@mlbridge
Copy link

@mlbridge mlbridge bot commented Oct 13, 2021

Webrevs

Copy link
Member

@dholmes-ora dholmes-ora left a comment

Hi Gerard,

It is a shame to see the same line (almost) copied three times but the conditional logic here is complicated enough that I think this explicit version is more readable than one that would try to share that line.

Thanks,
David

@openjdk
Copy link

@openjdk openjdk bot commented Oct 13, 2021

@gerard-ziemski 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:

8269175: [macosx-aarch64] wrong CPU speed in hs_err file

Reviewed-by: dholmes, dcubed, stuefe

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 49 new commits pushed to the master branch:

  • fb8e5cf: 8275368: Correct statement of kinds of elements Processor.process operates over
  • d548f2f: 8274346: Support for additional content in an app-image.
  • a619f89: 8274721: UnixSystem fails to provide uid, gid or groups if no username is available
  • 1afddb2: 8275322: Change nested classes in java.management to static nested classes
  • 45ebf85: 8275333: Print count in "Too many recored phases?" assert
  • ebb1363: 8251513: Code around Parse::do_lookupswitch/do_tableswitch should be cleaned up
  • bb7dacd: 8275334: Move class loading Events to a separate section in hs_err files
  • 3150069: 8271949: dumppath in -XX:FlightRecorderOptions does not affect
  • bfcf6a2: 8275277: assert(dest_attr.is_in_cset() == (obj->forwardee() == obj)) failed: Only evac-failed objects must be in the collection set here but is not
  • 96fef40: 8189591: No way to locally suppress doclint warnings
  • ... and 39 more: https://git.openjdk.java.net/jdk/compare/124f82377ba93359bc59118ee315ba194080fa92...master

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 label Oct 13, 2021
Copy link
Member

@dcubed-ojdk dcubed-ojdk left a comment

The changes look okay. If Apple changes their Apple Silicon policy
in the future, then we'll have an even more complicated situation,
but we'll cross that bridge if and when that happens.

What kind of testing was done on this change? While I don't expect
any tests to be unhappy about the missing speed data, I have been
surprised in the past.

@gerard-ziemski
Copy link
Author

@gerard-ziemski gerard-ziemski commented Oct 14, 2021

Hi Gerard,

It is a shame to see the same line (almost) copied three times but the conditional logic here is complicated enough that I think this explicit version is more readable than one that would try to share that line.

Thanks, David

Thank you David.

I tried, but like you said, it just ended up looking too hard to read when trying to reuse the the snprintf line of code.

@gerard-ziemski
Copy link
Author

@gerard-ziemski gerard-ziemski commented Oct 14, 2021

The changes look okay. If Apple changes their Apple Silicon policy in the future, then we'll have an even more complicated situation, but we'll cross that bridge if and when that happens.

What kind of testing was done on this change? While I don't expect any tests to be unhappy about the missing speed data, I have been surprised in the past.

Thank you Dan.

I only verified that the actual feature works manually, and I assumed that it was a trivial enough change that it shouldn't affect much, but technically we are tweaking the output, so I'll fire up some testing just in case ...

Do you think that we should file a CSR here?

@dcubed-ojdk
Copy link
Member

@dcubed-ojdk dcubed-ojdk commented Oct 14, 2021

Do you think that we should file a CSR here?

The hs_err_file format is not considered an API so no CSR needed (IMHO).
@dholmes-ora would have already said something if a CSR was needed.

@gerard-ziemski
Copy link
Author

@gerard-ziemski gerard-ziemski commented Oct 18, 2021

hs-tier1,2,3,4,5 look good

/intergrate

@openjdk
Copy link

@openjdk openjdk bot commented Oct 18, 2021

@gerard-ziemski Unknown command intergrate - for a list of valid commands use /help.

Copy link
Member

@tstuefe tstuefe left a comment

LGTM.

Side note, does anyone regularly build head on BSD ?

Cheers, Thomas

@gerard-ziemski
Copy link
Author

@gerard-ziemski gerard-ziemski commented Oct 18, 2021

LGTM.

Side note, does anyone regularly build head on BSD ?

Cheers, Thomas

Thank you Thomas.

macOS is the only BSD I use personally

@gerard-ziemski
Copy link
Author

@gerard-ziemski gerard-ziemski commented Oct 18, 2021

/integrate

@openjdk
Copy link

@openjdk openjdk bot commented Oct 18, 2021

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

  • 426bcee: 8275360: Use @OverRide in javax.annotation.processing
  • 4d383b9: 8275298: Remove unnecessary weak_oops_do call in adjust weak roots phase
  • fb8e5cf: 8275368: Correct statement of kinds of elements Processor.process operates over
  • d548f2f: 8274346: Support for additional content in an app-image.
  • a619f89: 8274721: UnixSystem fails to provide uid, gid or groups if no username is available
  • 1afddb2: 8275322: Change nested classes in java.management to static nested classes
  • 45ebf85: 8275333: Print count in "Too many recored phases?" assert
  • ebb1363: 8251513: Code around Parse::do_lookupswitch/do_tableswitch should be cleaned up
  • bb7dacd: 8275334: Move class loading Events to a separate section in hs_err files
  • 3150069: 8271949: dumppath in -XX:FlightRecorderOptions does not affect
  • ... and 41 more: https://git.openjdk.java.net/jdk/compare/124f82377ba93359bc59118ee315ba194080fa92...master

Your commit was automatically rebased without conflicts.

@openjdk openjdk bot closed this Oct 18, 2021
@openjdk openjdk bot added integrated and removed ready rfr labels Oct 18, 2021
@openjdk
Copy link

@openjdk openjdk bot commented Oct 18, 2021

@gerard-ziemski Pushed as commit bcbe384.

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
hotspot-runtime integrated
4 participants