RFR 8081770 [TESTBUG] regression Test7107135 needs to remove dependence on locally installed gcc
Chris Plummer
chris.plummer at oracle.com
Thu May 5 21:38:58 UTC 2016
On 5/5/16 1:42 PM, Gerald Thornbrugh wrote:
> 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?
Yes. I was just a little unsure of how LD_LIBRARY_PATH worked with JNI
libraries, but what you say above makes sense.
Chris
>
> 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