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

8271567: AArch64: AES Galois CounterMode (GCM) interleaved implementation using vector instructions #216

Closed
wants to merge 3 commits into from

Conversation

theRealAph
Copy link
Contributor

@theRealAph theRealAph commented Oct 27, 2021

[New PR because of the 17u updates SNAFU.]

This is a backport of the big AES/GCM patch from JDK head. It's a
major change and it's had very little time (almost a day) to mature in
head, so I've set things up so that there is no change at all unless
you explicitly enable -XX:+UseAESGCMIntrinsics, which defaults
to false. When we've had more time we can perhaps turn it on by default.


Progress

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

Issue

  • JDK-8271567: AArch64: AES Galois CounterMode (GCM) interleaved implementation using vector instructions

Reviewers

Reviewing

Using git

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

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

Using Skara CLI tools

Checkout this PR locally:
$ git pr checkout 216

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

Using diff file

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

@bridgekeeper
Copy link

bridgekeeper bot commented Oct 27, 2021

👋 Welcome back aph! 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 4f3b626a36319cbbbbdcb1c02a84486a3d4eddb6 8271567: AArch64: AES Galois CounterMode (GCM) interleaved implementation using vector instructions Oct 27, 2021
@openjdk
Copy link

openjdk bot commented Oct 27, 2021

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 Oct 27, 2021
@mlbridge
Copy link

mlbridge bot commented Oct 27, 2021

Webrevs

Copy link
Contributor

@adinn adinn left a comment

Choose a reason for hiding this comment

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

Looks good.

@openjdk
Copy link

openjdk bot commented Oct 29, 2021

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

8271567: AArch64: AES Galois CounterMode (GCM) interleaved implementation using vector instructions

Reviewed-by: adinn

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

  • 25bfea6: 8276130: Fix Github Actions of JDK17u to account for update version scheme
  • 22f1513: 8273575: memory leak in appendBootClassPath(), paths must be deallocated
  • 38bfd62: 8273965: some testlibrary_tests/ir_framework tests fail when c1 disabled
  • f0fb814: 8174819: java/nio/file/WatchService/LotsOfEvents.java fails intermittently
  • 08cee6f: 8275104: IR framework does not handle client VM builds correctly

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 Oct 29, 2021
@theRealAph
Copy link
Contributor Author

A small change: use the existing -XX:+UseAESCTRIntrinsicsflag rather than invent yet another one.

@adinn
Copy link
Contributor

adinn commented Nov 2, 2021

I believe that change was in when I reviewed this. So all is good.

@theRealAph
Copy link
Contributor Author

Can I get some maintainer attention for this one? Adds AES/GCM acceleration, very low risk because change because it's disabled by default.

@DamonFool
Copy link
Member

Hi @theRealAph ,

I also had a no risk backport to jdk11u openjdk/jdk11u-dev#599 .
But I noticed that you had just rejected it in the JBS without any comments.

So may I ask the reason for the rejection?
Thanks.

@theRealAph
Copy link
Contributor Author

Hi @theRealAph ,

I also had a no risk backport to jdk11u openjdk/jdk11u-dev#599 . But I noticed that you had just rejected it in the JBS without any comments.

So may I ask the reason for the rejection? Thanks.

Absolutely you may, but you should ask in the right place, which is in the appropriate bug report.

@theRealAph
Copy link
Contributor Author

/integrate

@openjdk
Copy link

openjdk bot commented Nov 18, 2021

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

  • f1a8a22: 8276205: Shenandoah: CodeCache_lock should always be held for initializing code cache iteration
  • 95573d4: 8268882: C2: assert(n->outcnt() != 0 || C->top() == n || n->is_Proj()) failed: No dead instructions after post-alloc
  • f9eed14: 8275766: (tz) Update Timezone Data to 2021e
  • 816b5cd: 8263059: security/infra/java/security/cert/CertPathValidator/certification/ComodoCA.java fails due to revoked cert
  • e5c70af: 8276854: Windows GHA builds fail due to broken Cygwin
  • e8eec1f: 8273595: tools/jpackage tests do not work on apt-based Linux distros like Debian
  • 9ff9e62: 8271315: Redo: Nimbus JTree renderer properties persist across L&F changes
  • e7e83d5: 8272369: java/io/File/GetXSpace.java failed with "RuntimeException: java.nio.file.NoSuchFileException: /run/user/0"
  • 1d11bcd: 8273486: Zero: Handle DiagnoseSyncOnValueBasedClasses VM option
  • 95726bf: 8276105: C2: Conv(D|F)2(I|L)Nodes::Ideal should handle rounding correctly
  • ... and 52 more: https://git.openjdk.java.net/jdk17u/compare/ccfe697f2330cd385e6b9842412fc6cc86494ed8...master

Your commit was automatically rebased without conflicts.

@openjdk openjdk bot closed this Nov 18, 2021
@openjdk openjdk bot added integrated Pull request has been integrated and removed ready Pull request is ready to be integrated rfr Pull request is ready for review labels Nov 18, 2021
@openjdk
Copy link

openjdk bot commented Nov 18, 2021

@theRealAph Pushed as commit 076941f.

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

@ijuma
Copy link

ijuma commented Oct 15, 2022

It's been nearly a year, can we consider enabling this by default now?

@theRealAph
Copy link
Contributor Author

It's been nearly a year, can we consider enabling this by default now?

I think so. Perhaps for 11 too.

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
Development

Successfully merging this pull request may close these issues.

4 participants