On Wed, 19 Jun 2024 01:50:30 GMT, Alex Menkov <amen...@openjdk.org> wrote:

> The change fixes a bug in Attach API implementation on Windows when 
> argument(s) are longer than 1023 bytes
> 
> testing: test/hotspot/jtreg/serviceability/attach, 
> test/jdk/com/sun/tools/attach on Oracle supported platforms

The fix looks good. Posted some nits and questions.

src/jdk.attach/windows/native/libattach/VirtualMachineImpl.c line 57:

> 55: doPrivilegedOpenProcess(DWORD dwDesiredAccess, BOOL bInheritHandle, DWORD 
> dwProcessId);
> 56: 
> 57: /* Convert jstring to C string, returns JNI_FALSE if the string has been 
> truncated. */

Nit: It is better to have it either:
 "Convert jstring to C string, return JNI_FALSE ..."
or
 "Converts jstring to C string, returns JNI_FALSE"
 
 The same applies to the comment at line 621.

test/hotspot/jtreg/serviceability/attach/LongArgTest.java line 94:

> 92:             HotSpotVirtualMachine vm = 
> (HotSpotVirtualMachine)VirtualMachine.attach(String.valueOf(app.getPid()));
> 93: 
> 94:             if (setFlag(vm)) {

Q: Should the test fail if there an `IOException` was caught in the `setFlag()` 
call?

test/hotspot/jtreg/serviceability/attach/LongArgTest.java line 101:

> 99:                                 + (actualValue == null
> 100:                                     ? "null"
> 101:                                     : ("size is " + actualValue.length() 
> + " instead of " + flagValue.length()));

Q: What if value is different but size is the same?
I understand the probability is very low but this is still confusing.

test/hotspot/jtreg/serviceability/attach/LongArgTest.java line 126:

> 124:                 ex.printStackTrace(System.out);
> 125:                 return false;
> 126:             }

Q: Is it always the case there is no need to close the `BufferedReader` in this 
context? Just want to understand.

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

PR Review: https://git.openjdk.org/jdk/pull/19780#pullrequestreview-2173973061
PR Review Comment: https://git.openjdk.org/jdk/pull/19780#discussion_r1675379386
PR Review Comment: https://git.openjdk.org/jdk/pull/19780#discussion_r1676279668
PR Review Comment: https://git.openjdk.org/jdk/pull/19780#discussion_r1676373808
PR Review Comment: https://git.openjdk.org/jdk/pull/19780#discussion_r1676377248

Reply via email to