RFR: JDK-8315706: com/sun/tools/attach/warnings/DynamicLoadWarningTest.java real fix for failure on AIX [v4]
Joachim Kern
jkern at openjdk.org
Thu Sep 14 12:32:18 UTC 2023
> After push of [JDK-8307478](https://bugs.openjdk.org/browse/JDK-8307478) , the following test started to fail on AIX :
> com/sun/tools/attach/warnings/DynamicLoadWarningTest.java;
> The problem was described in [JDK-8309549](https://bugs.openjdk.org/browse/JDK-8309549) with a first try of a fix.
> A second fix via [JDK-8310191](https://bugs.openjdk.org/browse/JDK-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.
Joachim Kern has updated the pull request incrementally with two additional commits since the last revision:
- Merge remote-tracking branch 'origin/JDK-8315706' into JDK-8315706
- Following the proposals
-------------
Changes:
- all: https://git.openjdk.org/jdk/pull/15583/files
- new: https://git.openjdk.org/jdk/pull/15583/files/f565f9a5..a8c6e65b
Webrevs:
- full: https://webrevs.openjdk.org/?repo=jdk&pr=15583&range=03
- incr: https://webrevs.openjdk.org/?repo=jdk&pr=15583&range=02-03
Stats: 17 lines in 6 files changed: 0 ins; 1 del; 16 mod
Patch: https://git.openjdk.org/jdk/pull/15583.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/15583/head:pull/15583
PR: https://git.openjdk.org/jdk/pull/15583
More information about the serviceability-dev
mailing list