@@ -101,6 +101,12 @@ _ebpf_core_memmove(
101101 _In_reads_ (source_length ) const void * source ,
102102 size_t source_length );
103103
104+ static uint64_t
105+ _ebpf_core_get_time_since_boot_ms ();
106+
107+ static uint64_t
108+ _ebpf_core_get_time_ms ();
109+
104110#define EBPF_CORE_GLOBAL_HELPER_EXTENSION_VERSION 0
105111
106112static ebpf_program_type_descriptor_t _ebpf_global_helper_program_descriptor = {
@@ -144,6 +150,8 @@ static const void* _ebpf_general_helpers[] = {
144150 (void * )& _ebpf_core_strncpy_s ,
145151 (void * )& _ebpf_core_strncat_s ,
146152 (void * )& _ebpf_core_strlen_s ,
153+ (void * )& _ebpf_core_get_time_since_boot_ms ,
154+ (void * )& _ebpf_core_get_time_ms ,
147155};
148156
149157static const ebpf_helper_function_addresses_t _ebpf_global_helper_function_dispatch_table = {
@@ -2257,17 +2265,33 @@ _ebpf_core_random_uint32()
22572265static uint64_t
22582266_ebpf_core_get_time_since_boot_ns ()
22592267{
2260- // ebpf_query_time_since_boot_precise returns time elapsed since
2268+ // cxplat_query_time_since_boot_precise returns time elapsed since
22612269 // boot in units of 100 ns.
2262- return ebpf_query_time_since_boot_precise (true) * EBPF_NS_PER_FILETIME ;
2270+ return cxplat_query_time_since_boot_precise (true) * EBPF_NS_PER_FILETIME ;
22632271}
22642272
22652273static uint64_t
22662274_ebpf_core_get_time_ns ()
22672275{
2268- // ebpf_query_time_since_boot_precise returns time elapsed since
2276+ // cxplat_query_time_since_boot_precise returns time elapsed since
2277+ // boot in units of 100 ns.
2278+ return cxplat_query_time_since_boot_precise (false) * EBPF_NS_PER_FILETIME ;
2279+ }
2280+
2281+ static uint64_t
2282+ _ebpf_core_get_time_since_boot_ms ()
2283+ {
2284+ // cxplat_query_time_since_boot_approximate returns time elapsed since
2285+ // boot in units of 100 ns.
2286+ return cxplat_query_time_since_boot_approximate (true) / EBPF_FILETIME_PER_MS ;
2287+ }
2288+
2289+ static uint64_t
2290+ _ebpf_core_get_time_ms ()
2291+ {
2292+ // cxplat_query_time_since_boot_approximate returns time elapsed since
22692293 // boot in units of 100 ns.
2270- return ebpf_query_time_since_boot_precise (false) * EBPF_NS_PER_FILETIME ;
2294+ return cxplat_query_time_since_boot_approximate (false) / EBPF_FILETIME_PER_MS ;
22712295}
22722296
22732297static uint64_t
0 commit comments