RFR 8081770 [TESTBUG] regression Test7107135 needs to remove dependence on locally installed gcc

Gerald Thornbrugh gerald.thornbrugh at oracle.com
Thu May 5 20:42:34 UTC 2016


Hi Chris,
> On 5/5/16 1:18 PM, Gerald Thornbrugh wrote:
>> Hi Chris,
>>> Hi Jerry,
>>>
>>> Thanks for taking care of this. As Calvin pointed out in the other 
>>> review, you should be using "hg rename".
>>>
>>> Otherwise overall your changes look fine, but I'm a little uncertain 
>>> about one aspect of your changes, and if it might impact the nature 
>>> of the testing. The shell script used LD_LIBRARY_PATH to make the 
>>> jni libraries locatable. Your java version uses -Djava.library.path. 
>>> I think this is probably ok, but just want to point it out and make 
>>> sure.
>> When the build process builds the native libraries it places them in 
>> "java.library.path".  The old script
>> built the native library itself and placed it in "LD_LIBRARY_PATH". 
>> The difference is just where the
>> native library is placed after it is built.
> Yes, but it's also different in how the JVM finds them. I assume it 
> looks in both places and treats the libraries equally no matter where 
> they are found.
My understanding is that "LD_LIBRARY_PATH" is placed in the 
"java.library.path" list before the JVM is
started.  If I remember correctly the new build process places the 
native libraries in a different place
and that path is also add to the "java.library.path" list.

Does that make sense?

Jerry
>
> Chris
>>
>> Thanks for the review.
>>
>> Jerry
>>>
>>> thanks,
>>>
>>> Chris
>>>
>>> On 5/3/16 2:54 PM, Gerald Thornbrugh wrote:
>>>> Hi Everyone,
>>>>
>>>> I would like to have the following change reviewed:
>>>>
>>>> Bug: https://bugs.openjdk.java.net/browse/JDK-8081770
>>>> Webrev: http://cr.openjdk.java.net/~gthornbr/8081770/webrev.00/ 
>>>> <http://cr.openjdk.java.net/%7Egthornbr/8081770/webrev.00/>
>>>>
>>>> JPRT testing completed without errors and I verified that the test 
>>>> was run.
>>>>
>>>>
>>>> The changes consist of:
>>>>
>>>> Renaming the test directory from "7107135" to "execstack".
>>>>
>>>> Replacing the existing Test7107135.sh script file with a java test 
>>>> source file Testexecstack.java.
>>>>
>>>> Adding the new test directory to the 
>>>> "BUILD_HOTSPOT_JTREG_NATIVE_SRC" list for Linux builds
>>>> so the native libtest-rw.c and libtest-rwx.c source files would be 
>>>> compiled into native libraries.
>>>>
>>>> Renaming the existing test.c native source file to libtest-rw.c and 
>>>> libtest-rwx.c so the build process
>>>> would identify the file as a native library source file and build 
>>>> the libraries.
>>>>
>>>> Adding native source file specific LDFLAGS so the source files 
>>>> could be built with "-z noexecstack"
>>>> and "-z execstack".
>>>>
>>>> To get the build process to create a "noexecstack" native library 
>>>> and an "execstack" native library
>>>> the existing test.c native library source was placed in two 
>>>> separate files (libtest-rw.c and libtest-rwx.c).
>>>> This was done so that different LDFLAGS could be specified per file.
>>>>
>>>> Please let me know if you have any questions or concerns.
>>>>
>>>> Thanks,
>>>>
>>>> Jerry
>>>
>>
>



More information about the hotspot-runtime-dev mailing list