RFR: 8311301: MethodExitTest may fail with stack buffer overrun
Daniel Jeliński
djelinski at openjdk.org
Tue Jul 4 19:56:01 UTC 2023
Please review this test-only fix that fixes the size of variables that are used in methods that expect a pointer.
On Windows, type `long` is 32 bits, pointers are 64 bits large. The method `GetThreadLocalStorage` writes a pointer (64 bits) to the address given by its parameter, which overflows a `long`. The code generated by VS compiler ignores this, but the code generated by clang crashes the test.
No new tests. MethodExitTest continues to pass on supported platforms, and passes on clang+win with this fix.
-------------
Commit messages:
- Fix buffer overrun
Changes: https://git.openjdk.org/jdk/pull/14770/files
Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=14770&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8311301
Stats: 3 lines in 1 file changed: 0 ins; 0 del; 3 mod
Patch: https://git.openjdk.org/jdk/pull/14770.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/14770/head:pull/14770
PR: https://git.openjdk.org/jdk/pull/14770
More information about the serviceability-dev
mailing list