-
Bug
-
Resolution: Fixed
-
P4
-
21, 22
-
b16
-
ppc
-
aix
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8318771 | 21.0.2 | Christoph Langer | P4 | Resolved | Fixed | b05 |
After push of JDK-8307478 , the following test started to fail on AIX :
com/sun/tools/attach/warnings/DynamicLoadWarningTest.java;
The problem was described inJDK-8309549 with a first try of a fix.
A second fix viaJDK-8310191 was necessary.
Both fixes just disable the specific subtest on AIX, without correction of the root cause.
The root cause is, that dlopen() on AIX returns different handles every time, even if you load a library twice. There is no official AIX API available to get this information on a different way.
My proposal is, to use the stat64x API with the fields st_device and st_inode. After a dlopen() the stat64x() API is called additionally to get this information which is then stored parallel to the library handle in the jvmtiAgent. For AIX we then can compare these values instead of the library handle and get the same functionality as on linux.
com/sun/tools/attach/warnings/DynamicLoadWarningTest.java;
The problem was described in
A second fix via
Both fixes just disable the specific subtest on AIX, without correction of the root cause.
The root cause is, that dlopen() on AIX returns different handles every time, even if you load a library twice. There is no official AIX API available to get this information on a different way.
My proposal is, to use the stat64x API with the fields st_device and st_inode. After a dlopen() the stat64x() API is called additionally to get this information which is then stored parallel to the library handle in the jvmtiAgent. For AIX we then can compare these values instead of the library handle and get the same functionality as on linux.
- backported by
-
JDK-8318771 com/sun/tools/attach/warnings/DynamicLoadWarningTest.java real fix for failure on AIX
- Resolved
- relates to
-
JDK-8320890 [AIX] Find a better way to mimic dl handle equality
- Resolved
- links to
-
Commit openjdk/jdk21u/b7e0c4a9
-
Commit openjdk/jdk/21c2dac1
-
Review openjdk/jdk21u/261
-
Review openjdk/jdk/15583
(1 links to)