| Server IP : 172.67.134.114 / Your IP : 162.159.115.41 Web Server : Apache/2.4.37 System : Linux almalinux.duckdns.org 4.18.0-553.111.1.el8_10.x86_64 #1 SMP Sun Mar 8 20:06:07 EDT 2026 x86_64 User : ricodeal ( 1046) PHP Version : 7.4.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /usr/share/systemtap/runtime/linux/ |
Upload File : |
#include <linux/sched.h>
// On 4.13 kernels, linux/sched.h doesn't include
// linux/sched/clock.h, where cpu_clock() is declared.
#include <linux/blkdev.h>
//
// The following kernel commit inlined the cpu_clock()
//
// commit 2c923e94cd9c6acff3b22f0ae29cfe65e2658b40
// Author: Daniel Lezcano <[email protected]>
// Date: Mon Apr 11 16:38:34 2016 +0200
//
// sched/clock: Make local_clock()/cpu_clock() inline
//
// The local_clock/cpu_clock functions were changed to prevent a double
// identical test with sched_clock_cpu() when HAVE_UNSTABLE_SCHED_CLOCK
// is set. That resulted in one line functions.
//
// As these functions are in all the cases one line functions and in the
// hot path, it is useful to specify them as static inline in order to
// give a strong hint to the compiler.
//
// After verification, it appears the compiler does not inline them
// without this hint. Change those functions to static inline.
//
// sched_clock_cpu() is called via the inlined local_clock()/cpu_clock()
// functions from sched.h. So any module code including sched.h will
// reference sched_clock_cpu(). Thus it must be exported with the
// EXPORT_SYMBOL_GPL macro.
//
void foo (void) {
(void) cpu_clock(0);
}