Skip to content

Conversation

@MBaesken
Copy link
Member

@MBaesken MBaesken commented Apr 19, 2023

After the latest harfbuzz update, the AIX build is broken. The old clang compiler from xlc16 does not compile harfbuzz correctly.
First issue in hb-algs.hh is that xlc16 clang still sets some GNUC-related macros, so we do not run into the __clang_major__ >= 8 check that should prevent to try to compile __builtin_mul_overflow with ancient clang.
The other issue in hb-subset.cc is a bit tricky and has been observed as well on macOS when very old clang versions were used.

Probably we can get rid of those 2 workarounds in some months after switching to xlc17 which includes a rather new clang version.


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

Reviewers

Reviewing

Using git

Checkout this PR locally:
$ git fetch https://git.openjdk.org/jdk.git pull/13529/head:pull/13529
$ git checkout pull/13529

Update a local copy of the PR:
$ git checkout pull/13529
$ git pull https://git.openjdk.org/jdk.git pull/13529/head

Using Skara CLI tools

Checkout this PR locally:
$ git pr checkout 13529

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

Using diff file

Download this PR as a diff file:
https://git.openjdk.org/jdk/pull/13529.diff

Webrev

Link to Webrev Comment

@bridgekeeper
Copy link

bridgekeeper bot commented Apr 19, 2023

👋 Welcome back mbaesken! 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 added the rfr Pull request is ready for review label Apr 19, 2023
@openjdk
Copy link

openjdk bot commented Apr 19, 2023

@MBaesken The following label will be automatically applied to this pull request:

  • client

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 client client-libs-dev@openjdk.org label Apr 19, 2023
@mlbridge
Copy link

mlbridge bot commented Apr 19, 2023

Webrevs

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. Thanks for fixing the AIX build! I think we will need this fix for 11u and 17u because we will probably stick with xlc 16 for these releases.

@openjdk
Copy link

openjdk bot commented Apr 19, 2023

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

8304291: [AIX] Broken build after JDK-8301998

Reviewed-by: mdoerr, tsteele, prr

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

  • 4ad3ac6: 8306135: Clean up and open source some AWT tests
  • 85de01e: 8306323: Update license files in CLDR v43
  • 48fd4f2: 8303431: [JVMCI] libgraal annotation API
  • c57af31: 8306038: SystemModulesPlugin generates code that doesn't pop when return value not used
  • a31a11f: 8306006: strace001.java fails due to unknown methods on stack
  • ddb8646: 8306123: Move InstanceKlass writeable flags
  • 1a41e12: 8306310: Move is_shared Klass flag
  • c738c8e: 8306278: jvmtiAgentList.cpp:253 assert(offset >= 0) failed: invariant occurs on AIX after JDK-8257967

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 19, 2023
Copy link
Contributor

@backwaterred backwaterred left a comment

Choose a reason for hiding this comment

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

I really appreciate your work on this one @MBaesken! This fix looks good.

I agree with Martin that we will want this to make its way to jdk17 and 11. Let me know if you would like me to take point on that task.

Copy link
Contributor

@prrace prrace left a comment

Choose a reason for hiding this comment

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

As a rule, we don't make changes to 3rd party code principally for the reason that it needs to be re-changed every time we upgrade. After some off-line discussion with the devs working on the AIX port of OpenJDK, we can make an exception here, and they will take care of re-applying it if it is still needed next time round.
And these changes only affect AIX of course ..

@MBaesken
Copy link
Member Author

Hi Tyler, Phil, Martin, thanks for the reviews !

/integrate

@openjdk
Copy link

openjdk bot commented Apr 20, 2023

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

Your commit was automatically rebased without conflicts.

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

openjdk bot commented Apr 20, 2023

@MBaesken Pushed as commit 310aa93.

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

keithc-ca added a commit to keithc-ca/openj9-openjdk that referenced this pull request Apr 20, 2023
From upstream:
* 8304291: [AIX] Broken build after JDK-8301998
* openjdk/jdk#13529

Signed-off-by: Keith W. Campbell <keithc@ca.ibm.com>
pshipton added a commit to pshipton/openj9-openjdk-jdk17 that referenced this pull request May 4, 2023
This is from openjdk/jdk#13529 and may come from
jdk17 upstream at some point.

Signed-off-by: Peter Shipton <Peter_Shipton@ca.ibm.com>
@adamfarley
Copy link

/help

@openjdk
Copy link

openjdk bot commented Jun 9, 2023

@adamfarley Available commands:

  • backport - create a backport
  • help - shows this text
  • tag - create a tag

@adamfarley
Copy link

/backport jdk11u-dev

@openjdk
Copy link

openjdk bot commented Jun 9, 2023

@adamfarley the backport was successfully created on the branch adamfarley-backport-310aa934 in my personal fork of openjdk/jdk11u-dev. To create a pull request with this backport targeting openjdk/jdk11u-dev:master, just click the following link:

➡️ Create pull request

The title of the pull request is automatically filled in correctly and below you find a suggestion for the pull request body:

Hi all,

This pull request contains a backport of commit 310aa934 from the openjdk/jdk repository.

The commit being backported was authored by Matthias Baesken on 20 Apr 2023 and was reviewed by Martin Doerr, Tyler Steele and Phil Race.

Thanks!

If you need to update the source branch of the pull then run the following commands in a local clone of your personal fork of openjdk/jdk11u-dev:

$ git fetch https://github.com/openjdk-bots/jdk11u-dev.git adamfarley-backport-310aa934:adamfarley-backport-310aa934
$ git checkout adamfarley-backport-310aa934
# make changes
$ git add paths/to/changed/files
$ git commit --message 'Describe additional changes made'
$ git push https://github.com/openjdk-bots/jdk11u-dev.git adamfarley-backport-310aa934

@adamfarley
Copy link

Note: I asked the bot for help because the documentation here, along with examples here and here, seem to imply that backport is not a valid command for closed PRs, so I wanted to know what my options were.

I mean, options aside from the somewhat lengthier process detailed here, which I'll do if I must.

@MBaesken
Copy link
Member Author

MBaesken commented Jun 9, 2023

Hi Adam , I do my backports from a commit , not a PR. Not sure if this works from a PR too, maybe it does, maybe not - at least the 'create pull request' link showed up so I guess you will find out if it works too from PRs .

@adamfarley
Copy link

Thanks Mat. Seems to work from PRs, and the PR it created seems to be valid. I'll update the associated issue now.

@adamfarley
Copy link

Not sure why previous committers had issues. Maybe this is new functionality.

@aivanov-jdk
Copy link
Member

The /backport command didn't work in PR, you had to issue it as a comment to the commit. I faced it myself. I guess the functionality has been updated so that it now works in PRs too. Good to know it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

client client-libs-dev@openjdk.org integrated Pull request has been integrated

Development

Successfully merging this pull request may close these issues.

6 participants