jdk11u-dev icon indicating copy to clipboard operation
jdk11u-dev copied to clipboard

8357657: [11u][windows] cannot stat '/jdk.crypto.ec/*': No such file or directory

Open mrserb opened this issue 6 months ago • 9 comments

This patch provides a workaround for a bug in the latest version of Cygwin. Only JDK 11 is affected; newer versions are not impacted because the makefiles were updated by JDK-8220383.

The issue is that: ifneq ($(wildcard $(IMPORT_MODULES_CLASSES)/$(MODULE)), ) returns results even when IMPORT_MODULES_CLASSES is empty/unset. This causes the build to incorrectly search for a module like /jdk.crypto.ec/, which fails because the directory does not exist.

The fix is to first check whether IMPORT_MODULES_CLASSES is set. If it is, we define IMPORT_MODULE_DIR as $(IMPORT_MODULES_CLASSES)/$(MODULE) and use this property consistently throughout the build. This matches the approach introduced in JDK-8220383 for this codepath.


Progress

  • [ ] Change must be properly reviewed (1 review required, with at least 1 Reviewer)
  • [x] Change must not contain extraneous whitespace
  • [x] Commit message must refer to an issue
  • [ ] JDK-8357657 needs maintainer approval

Issue

  • JDK-8357657: [11u][windows] cannot stat '/jdk.crypto.ec/*': No such file or directory (Bug - P3)

Reviewing

Using git

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

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

Using Skara CLI tools

Checkout this PR locally:
$ git pr checkout 3035

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

Using diff file

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

Using Webrev

Link to Webrev Comment

mrserb avatar May 23 '25 16:05 mrserb

:wave: Welcome back serb! 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.

bridgekeeper[bot] avatar May 23 '25 16:05 bridgekeeper[bot]

@mrserb This change now passes all automated pre-integration checks.

After integration, the commit message for the final commit will be:

8357657: [11u][windows] cannot stat '/jdk.crypto.ec/*': No such file or directory

Reviewed-by: shade

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 no new commits pushed to the master branch. If another commit should be pushed before you perform the /integrate command, your PR will be automatically rebased. If you prefer to avoid any potential 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[bot] avatar May 23 '25 16:05 openjdk[bot]

@mrserb This pull request has been inactive for more than 8 weeks and will be automatically closed if another 8 weeks passes without any activity. To avoid this, simply issue a /touch or /keepalive command to the pull request. Feel free to ask for assistance if you need help with progressing this pull request towards integration!

bridgekeeper[bot] avatar Jul 18 '25 22:07 bridgekeeper[bot]

/touch

mrserb avatar Aug 12 '25 17:08 mrserb

@mrserb The pull request is being re-evaluated and the inactivity timeout has been reset.

openjdk[bot] avatar Aug 12 '25 17:08 openjdk[bot]

Webrevs

mlbridge[bot] avatar Sep 24 '25 19:09 mlbridge[bot]

@mrserb This pull request has been inactive for more than 4 weeks and will be automatically closed if another 4 weeks passes without any activity. To avoid this, simply issue a /touch or /keepalive command to the pull request. Feel free to ask for assistance if you need help with progressing this pull request towards integration!

bridgekeeper[bot] avatar Oct 23 '25 00:10 bridgekeeper[bot]

/keepalive

mrserb avatar Oct 23 '25 03:10 mrserb

@mrserb The pull request is being re-evaluated and the inactivity timeout has been reset.

openjdk[bot] avatar Oct 23 '25 03:10 openjdk[bot]

OK, so this effectively takes the first two hunks from https://github.com/openjdk/jdk/commit/2af935c800691492f3e84cc6a11c4ec8f4070dba. I think it is reasonable to pull it in selectively into 11u. Have you considered backporting JDK-8220383 wholesale? I am guessing it is more risky?

shipilev avatar Nov 10 '25 10:11 shipilev

⚠️ @mrserb This change is now ready for you to apply for maintainer approval. This can be done directly in each associated issue or by using the /approval command.

openjdk[bot] avatar Nov 10 '25 10:11 openjdk[bot]

I am guessing it is more risky?

Correct.

mrserb avatar Nov 10 '25 18:11 mrserb

/approval request This patch adds a workaround for a bug in the latest Cygwin version. It has been tested on both new and old versions of Cygwin.

mrserb avatar Nov 10 '25 18:11 mrserb

@mrserb 8357657: The approval request has been created successfully.

openjdk[bot] avatar Nov 10 '25 18:11 openjdk[bot]

/integrate

mrserb avatar Nov 13 '25 06:11 mrserb

Going to push as commit 912a12be6407be18a27df70d9954cfdf3e5f009c.

openjdk[bot] avatar Nov 13 '25 06:11 openjdk[bot]

@mrserb Pushed as commit 912a12be6407be18a27df70d9954cfdf3e5f009c.

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

openjdk[bot] avatar Nov 13 '25 06:11 openjdk[bot]