[prev in list] [next in list] [prev in thread] [next in thread] 

List:       openjdk-hotspot-runtime-dev
Subject:    PING: RFR: 8241439: jdk.NativeLibraryEvent hooks all opened regular files
From:       Yasumasa Suenaga <suenaga () oss ! nttdata ! com>
Date:       2020-04-23 0:48:27
Message-ID: 0a0ab026-b105-5920-545b-96d3003a03bf () oss ! nttdata ! com
[Download RAW message or body]

PING:

> JBS: https://bugs.openjdk.java.net/browse/JDK-8241439
> webrev: http://cr.openjdk.java.net/~ysuenaga/JDK-8241439/webrev.01/

I think it resolves that JFR event consumer hooks regular files as native library on \
Linux.


Thanks,

Yasumasa


On 2020/04/16 9:30, Yasumasa Suenaga wrote:
> PING: Could you review it?
> 
> JBS: https://bugs.openjdk.java.net/browse/JDK-8241439
> webrev: http://cr.openjdk.java.net/~ysuenaga/JDK-8241439/webrev.01/
> 
> 
> Yasumasa
> 
> 
> On 2020/04/09 16:00, Yasumasa Suenaga wrote:
> > Hi all,
> > 
> > Please review this change:
> > 
> > JBS: https://bugs.openjdk.java.net/browse/JDK-8241439
> > webrev: http://cr.openjdk.java.net/~ysuenaga/JDK-8241439/webrev.00/
> > 
> > HotSpot has os::get_loaded_modules_info() to get all loaded native libraries, \
> > however it would call callback in twice on same library on Linux. Also it would \
> > call callback even if the file is not a library. 
> > We can see this problem in jdk.NativeLibrary JFR event as below:
> > 
> > 
> > ```
> > jdk.NativeLibrary {
> > startTime = 16:59:06.621
> > name = "/usr/lib64/libc-2.30.so"
> > baseAddress = 0x7FDB06ACC000
> > topAddress = 0x7FDB06AF1000
> > }
> > 
> > jdk.NativeLibrary {
> > startTime = 16:59:06.621
> > name = "/usr/lib64/libc-2.30.so"
> > baseAddress = 0x7FDB06AF1000
> > topAddress = 0x7FDB06C40000
> > }
> > 
> > > 
> > 
> > ```
> > 
> > ```
> > jdk.NativeLibrary {
> > startTime = 16:59:06.621
> > name = "/home/ysuenaga/OpenJDK/jdk/build/linux-x86_64-server-fastdebug/images/jdk/lib/server/classes.jsa"
> >  baseAddress = 0x800000000
> > topAddress = 0x800007000
> > }
> > ```
> > 
> > This change uses dl_iterate_phdr() to get them, so these problem has gone.
> > 
> > 
> > Thanks,
> > 
> > Yasumasa


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic