RFR (S) 8227370 Remove SharedPathsMiscInfo
Calvin Cheung
calvin.cheung at oracle.com
Mon Aug 26 20:09:44 UTC 2019
Hi Ioi,
Thanks for making sure it works with the "Class-Path" attribute.
It looks good.
Just one minor nit in classLoader.cpp:
please remove the extra blank line at line #1571.
I don't need to see another webrev for that.
thanks,
Calvin
On 8/23/19 4:56 PM, Ioi Lam wrote:
> Hi Jiangli,
>
> Thanks for the info. I have added code and test for non-existent files
> specified in Class-Path:.
>
> http://cr.openjdk.java.net/~iklam/jdk14/8227370_remove_shared_misc_info.v02/
>
>
> I also consolidated some of the duplicated code in
> FileMapInfo::add_shared_classpaths().
>
> Thanks
> - Ioi
>
>
> On 8/23/19 8:47 AM, Jiangli Zhou wrote:
>> Hi,
>>
>> It's not a complete code review yet. One good point that Calvin
>> brought up during the code review email discussion for the previous
>> related change was that runtime needs to check the non-existing JAR
>> entries specified via the Class-Path header in manifest. Could you
>> please verify those cases are handled properly with the change? Thanks.
>>
>> Regards,
>> Jiangli
>>
>> On Thu, Aug 22, 2019 at 8:28 AM Ioi Lam <ioi.lam at oracle.com
>> <mailto:ioi.lam at oracle.com>> wrote:
>>
>> https://bugs.openjdk.java.net/browse/JDK-8227370
>> http://cr.openjdk.java.net/~iklam/jdk14/8227370_remove_shared_misc_info.v01/
>>
>> For the 3 types of items stored in SharedPathsMiscInfo
>>
>> BOOT_PATH/APP_PATH:
>>
>> These are used only for tracing. I reimplemented the tracing
>> functionality in FileMapInfo::log_paths()
>>
>> NON_EXIST:
>>
>> It turns out we don't need to keep track of non-existent paths
>> from the
>> dump-time path. We can simply eliminate all the non-existent
>> paths from
>> both the dump-time and runtime paths, and check that the remaining
>> files
>> match. E.g.,
>>
>> dump: -cp a.jar:NE1:NE2:b.jar
>> run 1: -cp NE3:a.jar:NE4:b.jar
>> run 2: -cp x.jar:NE4:b.jar
>>
>> after elimination:
>>
>> dump = a.jar:b.jar
>> run 1 = a.jar:b.jar -> matched
>> run 2 = x.jar:b.jar -> mismatched
>>
>> The dump-time elimination was already done in
>> ClassLoader::update_class_path_entry_list().
>> The run-time elimination was already done in
>> FileMapInfo::create_path_array().
>>
>> So essentially I just tied things together and wrote a few more
>> test cases
>> in NonExistClasspath.java
>>
>>
>> Testing: hs-tier{1,2,3}
>>
>
More information about the hotspot-runtime-dev
mailing list