The VM has supported the Linux OProfile profiler since 2005, however to work properly with OProfile's Linux kernel module (ref lookup_dcookie()), the VM has to change the way compiled code memory is mapped. That is done under the control of the UseOprofile flag (default false).
As the Linux kernel perf subsystem has evolved, OProfile has ceased using its own kernel module and uses the perf system instead. This was added by the operf tool in OProfile release 0.9.8 (August 2012), and it relies on kernel 2.6.31+ (September 2009). As of Linux kernel 5.12 (April 2021) the OProfile kernel module has been removed.
Consequently the VM does not need this special handling and the code can be removed. As a first step we will deprecate the UseOprofile flag in JDK 25 and the obsolete it in JDK 26, when all related code will be removed.
Released 2020-07-20, OProfile 1.4.0 is the latest version.
As the Linux kernel perf subsystem has evolved, OProfile has ceased using its own kernel module and uses the perf system instead. This was added by the operf tool in OProfile release 0.9.8 (August 2012), and it relies on kernel 2.6.31+ (September 2009). As of Linux kernel 5.12 (April 2021) the OProfile kernel module has been removed.
Consequently the VM does not need this special handling and the code can be removed. As a first step we will deprecate the UseOprofile flag in JDK 25 and the obsolete it in JDK 26, when all related code will be removed.
Released 2020-07-20, OProfile 1.4.0 is the latest version.
- csr for
-
JDK-8345956 Deprecate the UseOprofile flag with a view to removing the legacy oprofile support in the VM
- Closed
- relates to
-
JDK-8346237 Obsolete the UseOprofile flag
- Open
- links to
-
Commit(master) openjdk/jdk/ceb4366e
-
Review(master) openjdk/jdk/22674