[jdk8u-dev] RFR: 8257620: Do not use objc_msgSend_stret to get macOS version

Olga Mikhaltsova omikhaltcova at openjdk.org
Tue Nov 22 16:13:35 UTC 2022


On Tue, 1 Nov 2022 20:44:38 GMT, Ben Taylor <btaylor at openjdk.org> wrote:

> This backports [JDK-8257620](https://bugs.openjdk.org/browse/JDK-8257620) for parity with Oracle JDK8 and OpenJDK 11+. 
> 
> The backport is not clean because [JDK-8269850](https://bugs.openjdk.org/browse/JDK-8269850) was applied first in 8u. If that change is backed out and reapplied after this backport, both are clean.
> 
> Change applied with:
> - `git revert 43cfe27fa3a11dd6d4fffcb1c1336ac7fdd0233b` (backout JDK-8269850)
> - `git backport --from https://github.com/openjdk/jdk d4c7db5060978302382549246f9ad6831f19377d` (apply JDK-8257620)
> - `git backport --from https://github.com/openjdk/jdk 3b1b8fc646493eae5f4df828afe29abb75fa5e60` (re-apply JDK-8269850)
> - `git rebase -i HEAD~3` (squash commits)

I meant not that but the following:

jdk8u-dev-fork % git revert 43cfe27fa3a11dd6d4fffcb1c1336ac7fdd0233b
[master 9957f9f8aef] Revert "8269850: Most JDK releases report macOS version 12 as 10.16 instead of 12.0"
 1 file changed, 18 insertions(+), 13 deletions(-)

jdk8u-dev-fork % git backport --from https://github.com/openjdk/jdk d4c7db5060978302382549246f9ad6831f19377d
Fetching ...
Cherry picking ...
CONFLICT (modify/delete): src/java.base/macosx/native/libjava/java_props_macosx.c deleted in HEAD and modified in d4c7db50609 (8257620: Do not use objc_msgSend_stret to get macOS version). Version d4c7db50609 (8257620: Do not use objc_msgSend_stret to get macOS version) of src/java.base/macosx/native/libjava/java_props_macosx.c left in tree.
warning: inexact rename detection was skipped due to too many files.
warning: you may want to set your merge.renamelimit variable to at least 66423 and retry the command.
error: could not apply d4c7db50609... 8257620: Do not use objc_msgSend_stret to get macOS version
hint: after resolving the conflicts, mark the corrected paths
hint: with 'git add <paths>' or 'git rm <paths>'

It seems it's impossible to apply this patch following the way in this description.
I get conflicts because of the location difference of the patched file `java_props_macosx.c`:
JDK: `./src/java.base/macosx/native/libjava/java_props_macosx.c`
JDK8: `./jdk/src/solaris/native/java/lang/java_props_macosx.c`
So it seems to me you needn't blackout JDK-8269850 because the diffs (JDK-8269850 and JDK-8257620) are not intersected and additionally you have to resolve conflicts manually (or to apply patch manually) any way.
Am I right? Or I understand something wrong?

-------------

PR: https://git.openjdk.org/jdk8u-dev/pull/153


More information about the jdk8u-dev mailing list