sphinx.addnodesdocument)}( rawsourcechildren]( translations LanguagesNode)}(hhh](h pending_xref)}(hhh]docutils.nodesTextChinese (Simplified)}parenthsba attributes}(ids]classes]names]dupnames]backrefs] refdomainstdreftypedoc reftarget(/translations/zh_CN/core-api/timekeepingmodnameN classnameN refexplicitutagnamehhh ubh)}(hhh]hChinese (Traditional)}hh2sbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget(/translations/zh_TW/core-api/timekeepingmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hItalian}hhFsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget(/translations/it_IT/core-api/timekeepingmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hJapanese}hhZsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget(/translations/ja_JP/core-api/timekeepingmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hKorean}hhnsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget(/translations/ko_KR/core-api/timekeepingmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hSpanish}hhsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget(/translations/sp_SP/core-api/timekeepingmodnameN classnameN refexplicituh1hhh ubeh}(h]h ]h"]h$]h&]current_languageEnglishuh1h hh _documenthsourceNlineNubhsection)}(hhh](htitle)}(hktime accessorsh]hktime accessors}(hhhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhhhB/var/lib/git/docbuild/linux/Documentation/core-api/timekeeping.rsthKubh paragraph)}(hXDevice drivers can read the current time using ktime_get() and the many related functions declared in linux/timekeeping.h. As a rule of thumb, using an accessor with a shorter name is preferred over one with a longer name if both are equally fit for a particular use case.h]hXDevice drivers can read the current time using ktime_get() and the many related functions declared in linux/timekeeping.h. As a rule of thumb, using an accessor with a shorter name is preferred over one with a longer name if both are equally fit for a particular use case.}(hhhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhhhhubh)}(hhh](h)}(hBasic ktime_t based interfacesh]hBasic ktime_t based interfaces}(hhhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhhhhhK ubh)}(hwThe recommended simplest form returns an opaque ktime_t, with variants that return time for different clock references:h]hwThe recommended simplest form returns an opaque ktime_t, with variants that return time for different clock references:}(hhhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK hhhhubhindex)}(hhh]h}(h]h ]h"]h$]h&]entries](singlektime_get (C function) c.ktime_gethNtauh1hhhhhhhhNubhdesc)}(hhh](hdesc_signature)}(hktime_t ktime_get( void )h]hdesc_signature_line)}(hktime_t ktime_get(void)h](h)}(hhh]h desc_sig_name)}(hktime_th]hktime_t}(hj hhhNhNubah}(h]h ]nah"]h$]h&]uh1j hjubah}(h]h ]h"]h$]h&] refdomaincreftype identifier reftargetjmodnameN classnameN c:parent_keysphinx.domains.c LookupKey)}data]j* ASTIdentifier)}j% ktime_getsb c.ktime_getasbuh1hhjhhhhhKubhdesc_sig_space)}(h h]h }(hj:hhhNhNubah}(h]h ]wah"]h$]h&]uh1j8hjhhhhhKubh desc_name)}(h ktime_geth]j )}(hj5h]h ktime_get}(hjOhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjKubah}(h]h ](sig-namedescnameeh"]h$]h&] xml:spacepreserveuh1jIhjhhhhhKubhdesc_parameterlist)}(h(void)h]hdesc_parameter)}(hvoidh]hdesc_sig_keyword_type)}(hvoidh]hvoid}(hjthhhNhNubah}(h]h ]ktah"]h$]h&]uh1jrhjnubah}(h]h ]h"]h$]h&]noemphjdjeuh1jlhjhubah}(h]h ]h"]h$]h&]jdjeuh1jfhjhhhhhKubeh}(h]h ]h"]h$]h&]jdje add_permalinkuh1jsphinx_line_type declaratorhhhhhhhKubah}(h]hah ](sig sig-objecteh"]h$]h&] is_multiline _toc_parts) _toc_namehuh1hhhhKhhhhubh desc_content)}(hhh](h)}(hCLOCK_MONOTONICh]hCLOCK_MONOTONIC}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjhhubh)}(hUseful for reliable timestamps and measuring short time intervals accurately. Starts at system boot time but stops during suspend.h]hUseful for reliable timestamps and measuring short time intervals accurately. Starts at system boot time but stops during suspend.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjhhubeh}(h]h ]h"]h$]h&]uh1jhhhhhhhKubeh}(h]h ](j#functioneh"]h$]h&]domainj#objtypejdesctypejnoindex noindexentrynocontentsentryuh1hhhhhhhhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](hktime_get_boottime (C function)c.ktime_get_boottimehNtauh1hhhhhhhhNubh)}(hhh](h)}(h"ktime_t ktime_get_boottime( void )h]j)}(h ktime_t ktime_get_boottime(void)h](h)}(hhh]j )}(hktime_th]hktime_t}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetjmodnameN classnameNj)j,)}j/]j2)}j%ktime_get_boottimesbc.ktime_get_boottimeasbuh1hhjhhhhhKubj9)}(h h]h }(hjhhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjhhhhhKubjJ)}(hktime_get_boottimeh]j )}(hjh]hktime_get_boottime}(hj'hhhNhNubah}(h]h ]jah"]h$]h&]uh1j hj#ubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhjhhhhhKubjg)}(h(void)h]jm)}(hvoidh]js)}(hvoidh]hvoid}(hjBhhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhj>ubah}(h]h ]h"]h$]h&]noemphjdjeuh1jlhj:ubah}(h]h ]h"]h$]h&]jdjeuh1jfhjhhhhhKubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhjhhhhhKubah}(h]jah ](jjeh"]h$]h&]jj)jhuh1hhhhKhjhhubj)}(hhh](h)}(hCLOCK_BOOTTIMEh]hCLOCK_BOOTTIME}(hjlhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjihhubh)}(hLike ktime_get(), but does not stop when suspended. This can be used e.g. for key expiration times that need to be synchronized with other machines across a suspend operation.h]hLike ktime_get(), but does not stop when suspended. This can be used e.g. for key expiration times that need to be synchronized with other machines across a suspend operation.}(hjzhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjihhubeh}(h]h ]h"]h$]h&]uh1jhjhhhhhKubeh}(h]h ](j#functioneh"]h$]h&]jj#jjjjjjjuh1hhhhhhhhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](hktime_get_real (C function)c.ktime_get_realhNtauh1hhhhhhhhNubh)}(hhh](h)}(hktime_t ktime_get_real( void )h]j)}(hktime_t ktime_get_real(void)h](h)}(hhh]j )}(hktime_th]hktime_t}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetjmodnameN classnameNj)j,)}j/]j2)}j%ktime_get_realsbc.ktime_get_realasbuh1hhjhhhhhKubj9)}(h h]h }(hjhhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjhhhhhKubjJ)}(hktime_get_realh]j )}(hjh]hktime_get_real}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhjhhhhhKubjg)}(h(void)h]jm)}(hvoidh]js)}(hvoidh]hvoid}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhjubah}(h]h ]h"]h$]h&]noemphjdjeuh1jlhjubah}(h]h ]h"]h$]h&]jdjeuh1jfhjhhhhhKubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhjhhhhhKubah}(h]jah ](jjeh"]h$]h&]jj)jhuh1hhhhKhjhhubj)}(hhh](h)}(hCLOCK_REALTIMEh]hCLOCK_REALTIME}(hj)hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK!hj&hhubh)}(hXReturns the time in relative to the UNIX epoch starting in 1970 using the Coordinated Universal Time (UTC), same as gettimeofday() user space. This is used for all timestamps that need to persist across a reboot, like inode times, but should be avoided for internal uses, since it can jump backwards due to a leap second update, NTP adjustment settimeofday() operation from user space.h]hXReturns the time in relative to the UNIX epoch starting in 1970 using the Coordinated Universal Time (UTC), same as gettimeofday() user space. This is used for all timestamps that need to persist across a reboot, like inode times, but should be avoided for internal uses, since it can jump backwards due to a leap second update, NTP adjustment settimeofday() operation from user space.}(hj7hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK#hj&hhubeh}(h]h ]h"]h$]h&]uh1jhjhhhhhKubeh}(h]h ](j#functioneh"]h$]h&]jj#jjNjjNjjjuh1hhhhhhhhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](hktime_get_clocktai (C function)c.ktime_get_clocktaihNtauh1hhhhhhhhNubh)}(hhh](h)}(h"ktime_t ktime_get_clocktai( void )h]j)}(h ktime_t ktime_get_clocktai(void)h](h)}(hhh]j )}(hktime_th]hktime_t}(hjnhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjkubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetjpmodnameN classnameNj)j,)}j/]j2)}j%ktime_get_clocktaisbc.ktime_get_clocktaiasbuh1hhjghhhhhK+ubj9)}(h h]h }(hjhhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjghhhhhK+ubjJ)}(hktime_get_clocktaih]j )}(hjh]hktime_get_clocktai}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhjghhhhhK+ubjg)}(h(void)h]jm)}(hvoidh]js)}(hvoidh]hvoid}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhjubah}(h]h ]h"]h$]h&]noemphjdjeuh1jlhjubah}(h]h ]h"]h$]h&]jdjeuh1jfhjghhhhhK+ubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhjchhhhhK+ubah}(h]j^ah ](jjeh"]h$]h&]jj)jhuh1hhhhK+hj`hhubj)}(hhh](h block_quote)}(h CLOCK_TAI h]h)}(h CLOCK_TAIh]h CLOCK_TAI}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK-hjubah}(h]h ]h"]h$]h&]uh1jhhhK-hjhhubh)}(hLike ktime_get_real(), but uses the International Atomic Time (TAI) reference instead of UTC to avoid jumping on leap second updates. This is rarely useful in the kernel.h]hLike ktime_get_real(), but uses the International Atomic Time (TAI) reference instead of UTC to avoid jumping on leap second updates. This is rarely useful in the kernel.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK/hjhhubeh}(h]h ]h"]h$]h&]uh1jhj`hhhhhK+ubeh}(h]h ](j#functioneh"]h$]h&]jj#jjjjjjjuh1hhhhhhhhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](hktime_get_raw (C function)c.ktime_get_rawhNtauh1hhhhhhhhNubh)}(hhh](h)}(hktime_t ktime_get_raw( void )h]j)}(hktime_t ktime_get_raw(void)h](h)}(hhh]j )}(hktime_th]hktime_t}(hj7hhhNhNubah}(h]h ]jah"]h$]h&]uh1j hj4ubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetj9modnameN classnameNj)j,)}j/]j2)}j% ktime_get_rawsbc.ktime_get_rawasbuh1hhj0hhhhhK3ubj9)}(h h]h }(hjXhhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hj0hhhhhK3ubjJ)}(h ktime_get_rawh]j )}(hjUh]h ktime_get_raw}(hjjhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjfubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhj0hhhhhK3ubjg)}(h(void)h]jm)}(hvoidh]js)}(hvoidh]hvoid}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhjubah}(h]h ]h"]h$]h&]noemphjdjeuh1jlhj}ubah}(h]h ]h"]h$]h&]jdjeuh1jfhj0hhhhhK3ubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhj,hhhhhK3ubah}(h]j'ah ](jjeh"]h$]h&]jj)jhuh1hhhhK3hj)hhubj)}(hhh](h)}(hCLOCK_MONOTONIC_RAWh]hCLOCK_MONOTONIC_RAW}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK5hjhhubh)}(hLike ktime_get(), but runs at the same rate as the hardware clocksource without (NTP) adjustments for clock drift. This is also rarely needed in the kernel.h]hLike ktime_get(), but runs at the same rate as the hardware clocksource without (NTP) adjustments for clock drift. This is also rarely needed in the kernel.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK7hjhhubeh}(h]h ]h"]h$]h&]uh1jhj)hhhhhK3ubeh}(h]h ](j#functioneh"]h$]h&]jj#jjjjjjjuh1hhhhhhhhNubeh}(h]basic-ktime-t-based-interfacesah ]h"]basic ktime_t based interfacesah$]h&]uh1hhhhhhhhK ubh)}(hhh](h)}(h)nanosecond, timespec64, and second outputh]h)nanosecond, timespec64, and second output}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjhhhhhKhjhhubh)}(hhh]h}(h]h ]h"]h$]h&]entries]((hktime_get_ns (C function)c.ktime_get_nshNt(h"ktime_get_boottime_ns (C function)c.ktime_get_boottime_nshNt(hktime_get_real_ns (C function)c.ktime_get_real_nshNt(h"ktime_get_clocktai_ns (C function)c.ktime_get_clocktai_nshNt(hktime_get_raw_ns (C function)c.ktime_get_raw_nshNteuh1hhjhhhhhNubh)}(hhh](h)}(hu64 ktime_get_ns( void )h]j)}(hu64 ktime_get_ns(void)h](h)}(hhh]j )}(hu64h]hu64}(hj'hhhNhNubah}(h]h ]jah"]h$]h&]uh1j hj$ubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetj)modnameN classnameNj)j,)}j/]j2)}j% ktime_get_nssbc.ktime_get_nsasbuh1hhj hhhhhKAubj9)}(h h]h }(hjHhhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hj hhhhhKAubjJ)}(h ktime_get_nsh]j )}(hjEh]h ktime_get_ns}(hjZhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjVubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhj hhhhhKAubjg)}(h(void)h]jm)}(hvoidh]js)}(hvoidh]hvoid}(hjuhhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhjqubah}(h]h ]h"]h$]h&]noemphjdjeuh1jlhjmubah}(h]h ]h"]h$]h&]jdjeuh1jfhj hhhhhKAubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhjhhhhhKAubah}(h]j ah ](jjeh"]h$]h&]jj)jhuh1hhhhKAhjhhubh)}(h!u64 ktime_get_boottime_ns( void )h]j)}(hu64 ktime_get_boottime_ns(void)h](h)}(hhh]j )}(hu64h]hu64}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetjmodnameN classnameNj)j,)}j/]j2)}j%ktime_get_boottime_nssbc.ktime_get_boottime_nsasbuh1hhjhhhhhKAubj9)}(h h]h }(hjhhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjhhhhhKAubjJ)}(hktime_get_boottime_nsh]j )}(hjh]hktime_get_boottime_ns}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhjhhhhhKAubjg)}(h(void)h]jm)}(hvoidh]js)}(hvoidh]hvoid}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhjubah}(h]h ]h"]h$]h&]noemphjdjeuh1jlhjubah}(h]h ]h"]h$]h&]jdjeuh1jfhjhhhhhKAubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhjhhhhhKAubah}(h]jah ](jjeh"]h$]h&]jj)jhuh1hhhhKAhjhhubh)}(hu64 ktime_get_real_ns( void )h]j)}(hu64 ktime_get_real_ns(void)h](h)}(hhh]j )}(hu64h]hu64}(hj'hhhNhNubah}(h]h ]jah"]h$]h&]uh1j hj$ubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetj)modnameN classnameNj)j,)}j/]j2)}j%ktime_get_real_nssbc.ktime_get_real_nsasbuh1hhj hhhhhKAubj9)}(h h]h }(hjHhhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hj hhhhhKAubjJ)}(hktime_get_real_nsh]j )}(hjEh]hktime_get_real_ns}(hjZhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjVubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhj hhhhhKAubjg)}(h(void)h]jm)}(hvoidh]js)}(hvoidh]hvoid}(hjuhhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhjqubah}(h]h ]h"]h$]h&]noemphjdjeuh1jlhjmubah}(h]h ]h"]h$]h&]jdjeuh1jfhj hhhhhKAubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhjhhhhhKAubah}(h]jah ](jjeh"]h$]h&]jj)jhuh1hhhhKAhjhhubh)}(h!u64 ktime_get_clocktai_ns( void )h]j)}(hu64 ktime_get_clocktai_ns(void)h](h)}(hhh]j )}(hu64h]hu64}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetjmodnameN classnameNj)j,)}j/]j2)}j%ktime_get_clocktai_nssbc.ktime_get_clocktai_nsasbuh1hhjhhhhhKAubj9)}(h h]h }(hjhhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjhhhhhKAubjJ)}(hktime_get_clocktai_nsh]j )}(hjh]hktime_get_clocktai_ns}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhjhhhhhKAubjg)}(h(void)h]jm)}(hvoidh]js)}(hvoidh]hvoid}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhjubah}(h]h ]h"]h$]h&]noemphjdjeuh1jlhjubah}(h]h ]h"]h$]h&]jdjeuh1jfhjhhhhhKAubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhjhhhhhKAubah}(h]jah ](jjeh"]h$]h&]jj)jhuh1hhhhKAhjhhubh)}(hu64 ktime_get_raw_ns( void )h]j)}(hu64 ktime_get_raw_ns(void)h](h)}(hhh]j )}(hu64h]hu64}(hj'hhhNhNubah}(h]h ]jah"]h$]h&]uh1j hj$ubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetj)modnameN classnameNj)j,)}j/]j2)}j%ktime_get_raw_nssbc.ktime_get_raw_nsasbuh1hhj hhhhhKAubj9)}(h h]h }(hjHhhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hj hhhhhKAubjJ)}(hktime_get_raw_nsh]j )}(hjEh]hktime_get_raw_ns}(hjZhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjVubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhj hhhhhKAubjg)}(h(void)h]jm)}(hvoidh]js)}(hvoidh]hvoid}(hjuhhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhjqubah}(h]h ]h"]h$]h&]noemphjdjeuh1jlhjmubah}(h]h ]h"]h$]h&]jdjeuh1jfhj hhhhhKAubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhjhhhhhKAubah}(h]jah ](jjeh"]h$]h&]jj)jhuh1hhhhKAhjhhubj)}(hhh]h)}(hSame as the plain ktime_get functions, but returning a u64 number of nanoseconds in the respective time reference, which may be more convenient for some callers.h]hSame as the plain ktime_get functions, but returning a u64 number of nanoseconds in the respective time reference, which may be more convenient for some callers.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKGhjhhubah}(h]h ]h"]h$]h&]uh1jhjhhhhhKAubeh}(h]h ](j#functioneh"]h$]h&]jj#jjjjjjjuh1hhhhjhhhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries]((hktime_get_ts64 (C function)c.ktime_get_ts64hNt(h$ktime_get_boottime_ts64 (C function)c.ktime_get_boottime_ts64hNt(h ktime_get_real_ts64 (C function)c.ktime_get_real_ts64hNt(h$ktime_get_clocktai_ts64 (C function)c.ktime_get_clocktai_ts64hNt(hktime_get_raw_ts64 (C function)c.ktime_get_raw_ts64hNteuh1hhjhhhhhNubh)}(hhh](h)}(h*void ktime_get_ts64( struct timespec64 * )h]j)}(h'void ktime_get_ts64(struct timespec64*)h](js)}(hvoidh]hvoid}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhjhhhhhKKubj9)}(h h]h }(hjhhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjhhhhhKKubjJ)}(hktime_get_ts64h]j )}(hktime_get_ts64h]hktime_get_ts64}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhjhhhhhKKubjg)}(h(struct timespec64*)h]jm)}(hstruct timespec64*h](hdesc_sig_keyword)}(hstructh]hstruct}(hjhhhNhNubah}(h]h ]kah"]h$]h&]uh1jhjubj9)}(h h]h }(hj,hhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjubh)}(hhh]j )}(h timespec64h]h timespec64}(hj=hhhNhNubah}(h]h ]jah"]h$]h&]uh1j hj:ubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetj?modnameN classnameNj)j,)}j/]j2)}j%jsbc.ktime_get_ts64asbuh1hhjubhdesc_sig_punctuation)}(h*h]h*}(hj_hhhNhNubah}(h]h ]pah"]h$]h&]uh1j]hjubeh}(h]h ]h"]h$]h&]noemphjdjeuh1jlhjubah}(h]h ]h"]h$]h&]jdjeuh1jfhjhhhhhKKubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhjhhhhhKKubah}(h]jah ](jjeh"]h$]h&]jj)jhuh1hhhhKKhjhhubh)}(h3void ktime_get_boottime_ts64( struct timespec64 * )h]j)}(h0void ktime_get_boottime_ts64(struct timespec64*)h](js)}(hvoidh]hvoid}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhjhhhhhKKubj9)}(h h]h }(hjhhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjhhhhhKKubjJ)}(hktime_get_boottime_ts64h]j )}(hktime_get_boottime_ts64h]hktime_get_boottime_ts64}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhjhhhhhKKubjg)}(h(struct timespec64*)h]jm)}(hstruct timespec64*h](j)}(hjh]hstruct}(hjhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjubj9)}(h h]h }(hjhhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjubh)}(hhh]j )}(h timespec64h]h timespec64}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetjmodnameN classnameNj)j,)}j/]j2)}j%jsbc.ktime_get_boottime_ts64asbuh1hhjubj^)}(hjah]h*}(hj hhhNhNubah}(h]h ]jjah"]h$]h&]uh1j]hjubeh}(h]h ]h"]h$]h&]noemphjdjeuh1jlhjubah}(h]h ]h"]h$]h&]jdjeuh1jfhjhhhhhKKubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhjhhhhhKKubah}(h]jah ](jjeh"]h$]h&]jj)jhuh1hhhhKKhjhhubh)}(h/void ktime_get_real_ts64( struct timespec64 * )h]j)}(h,void ktime_get_real_ts64(struct timespec64*)h](js)}(hvoidh]hvoid}(hj7 hhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhj3 hhhhhKKubj9)}(h h]h }(hjE hhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hj3 hhhhhKKubjJ)}(hktime_get_real_ts64h]j )}(hktime_get_real_ts64h]hktime_get_real_ts64}(hjW hhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjS ubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhj3 hhhhhKKubjg)}(h(struct timespec64*)h]jm)}(hstruct timespec64*h](j)}(hjh]hstruct}(hjs hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjo ubj9)}(h h]h }(hj hhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjo ubh)}(hhh]j )}(h timespec64h]h timespec64}(hj hhhNhNubah}(h]h ]jah"]h$]h&]uh1j hj ubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetj modnameN classnameNj)j,)}j/]j2)}j%jY sbc.ktime_get_real_ts64asbuh1hhjo ubj^)}(hjah]h*}(hj hhhNhNubah}(h]h ]jjah"]h$]h&]uh1j]hjo ubeh}(h]h ]h"]h$]h&]noemphjdjeuh1jlhjk ubah}(h]h ]h"]h$]h&]jdjeuh1jfhj3 hhhhhKKubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhj/ hhhhhKKubah}(h]jah ](jjeh"]h$]h&]jj)jhuh1hhhhKKhjhhubh)}(h3void ktime_get_clocktai_ts64( struct timespec64 * )h]j)}(h0void ktime_get_clocktai_ts64(struct timespec64*)h](js)}(hvoidh]hvoid}(hj hhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhj hhhhhKKubj9)}(h h]h }(hj hhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hj hhhhhKKubjJ)}(hktime_get_clocktai_ts64h]j )}(hktime_get_clocktai_ts64h]hktime_get_clocktai_ts64}(hj hhhNhNubah}(h]h ]jah"]h$]h&]uh1j hj ubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhj hhhhhKKubjg)}(h(struct timespec64*)h]jm)}(hstruct timespec64*h](j)}(hjh]hstruct}(hj hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj ubj9)}(h h]h }(hj( hhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hj ubh)}(hhh]j )}(h timespec64h]h timespec64}(hj9 hhhNhNubah}(h]h ]jah"]h$]h&]uh1j hj6 ubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetj; modnameN classnameNj)j,)}j/]j2)}j%j sbc.ktime_get_clocktai_ts64asbuh1hhj ubj^)}(hjah]h*}(hjY hhhNhNubah}(h]h ]jjah"]h$]h&]uh1j]hj ubeh}(h]h ]h"]h$]h&]noemphjdjeuh1jlhj ubah}(h]h ]h"]h$]h&]jdjeuh1jfhj hhhhhKKubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhj hhhhhKKubah}(h]jah ](jjeh"]h$]h&]jj)jhuh1hhhhKKhjhhubh)}(h.void ktime_get_raw_ts64( struct timespec64 * )h]j)}(h+void ktime_get_raw_ts64(struct timespec64*)h](js)}(hvoidh]hvoid}(hj hhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhj hhhhhKKubj9)}(h h]h }(hj hhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hj hhhhhKKubjJ)}(hktime_get_raw_ts64h]j )}(hktime_get_raw_ts64h]hktime_get_raw_ts64}(hj hhhNhNubah}(h]h ]jah"]h$]h&]uh1j hj ubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhj hhhhhKKubjg)}(h(struct timespec64*)h]jm)}(hstruct timespec64*h](j)}(hjh]hstruct}(hj hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj ubj9)}(h h]h }(hj hhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hj ubh)}(hhh]j )}(h timespec64h]h timespec64}(hj hhhNhNubah}(h]h ]jah"]h$]h&]uh1j hj ubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetj modnameN classnameNj)j,)}j/]j2)}j%j sbc.ktime_get_raw_ts64asbuh1hhj ubj^)}(hjah]h*}(hj hhhNhNubah}(h]h ]jjah"]h$]h&]uh1j]hj ubeh}(h]h ]h"]h$]h&]noemphjdjeuh1jlhj ubah}(h]h ]h"]h$]h&]jdjeuh1jfhj hhhhhKKubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhj hhhhhKKubah}(h]jah ](jjeh"]h$]h&]jj)jhuh1hhhhKKhjhhubj)}(hhh]h)}(hSame above, but returns the time in a 'struct timespec64', split into seconds and nanoseconds. This can avoid an extra division when printing the time, or when passing it into an external interface that expects a 'timespec' or 'timeval' structure.h]hXSame above, but returns the time in a ‘struct timespec64’, split into seconds and nanoseconds. This can avoid an extra division when printing the time, or when passing it into an external interface that expects a ‘timespec’ or ‘timeval’ structure.}(hj* hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKQhj' hhubah}(h]h ]h"]h$]h&]uh1jhjhhhhhKKubeh}(h]h ](j#functioneh"]h$]h&]jj#jjA jjA jjjuh1hhhhjhhhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries]((hktime_get_seconds (C function)c.ktime_get_secondshNt(h'ktime_get_boottime_seconds (C function)c.ktime_get_boottime_secondshNt(h#ktime_get_real_seconds (C function)c.ktime_get_real_secondshNt(h'ktime_get_clocktai_seconds (C function)c.ktime_get_clocktai_secondshNt(h"ktime_get_raw_seconds (C function)c.ktime_get_raw_secondshNteuh1hhjhhhhhNubh)}(hhh](h)}(h"time64_t ktime_get_seconds( void )h]j)}(h time64_t ktime_get_seconds(void)h](h)}(hhh]j )}(htime64_th]htime64_t}(hjm hhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjj ubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetjo modnameN classnameNj)j,)}j/]j2)}j%ktime_get_secondssbc.ktime_get_secondsasbuh1hhjf hhhhhKVubj9)}(h h]h }(hj hhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjf hhhhhKVubjJ)}(hktime_get_secondsh]j )}(hj h]hktime_get_seconds}(hj hhhNhNubah}(h]h ]jah"]h$]h&]uh1j hj ubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhjf hhhhhKVubjg)}(h(void)h]jm)}(hvoidh]js)}(hvoidh]hvoid}(hj hhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhj ubah}(h]h ]h"]h$]h&]noemphjdjeuh1jlhj ubah}(h]h ]h"]h$]h&]jdjeuh1jfhjf hhhhhKVubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhjb hhhhhKVubah}(h]jQ ah ](jjeh"]h$]h&]jj)jhuh1hhhhKVhj_ hhubh)}(h+time64_t ktime_get_boottime_seconds( void )h]j)}(h)time64_t ktime_get_boottime_seconds(void)h](h)}(hhh]j )}(htime64_th]htime64_t}(hj hhhNhNubah}(h]h ]jah"]h$]h&]uh1j hj ubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetj modnameN classnameNj)j,)}j/]j2)}j%ktime_get_boottime_secondssbc.ktime_get_boottime_secondsasbuh1hhj hhhhhKVubj9)}(h h]h }(hj hhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hj hhhhhKVubjJ)}(hktime_get_boottime_secondsh]j )}(hj h]hktime_get_boottime_seconds}(hj hhhNhNubah}(h]h ]jah"]h$]h&]uh1j hj ubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhj hhhhhKVubjg)}(h(void)h]jm)}(hvoidh]js)}(hvoidh]hvoid}(hj; hhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhj7 ubah}(h]h ]h"]h$]h&]noemphjdjeuh1jlhj3 ubah}(h]h ]h"]h$]h&]jdjeuh1jfhj hhhhhKVubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhj hhhhhKVubah}(h]jT ah ](jjeh"]h$]h&]jj)jhuh1hhhhKVhj_ hhubh)}(h'time64_t ktime_get_real_seconds( void )h]j)}(h%time64_t ktime_get_real_seconds(void)h](h)}(hhh]j )}(htime64_th]htime64_t}(hjm hhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjj ubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetjo modnameN classnameNj)j,)}j/]j2)}j%ktime_get_real_secondssbc.ktime_get_real_secondsasbuh1hhjf hhhhhKVubj9)}(h h]h }(hj hhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjf hhhhhKVubjJ)}(hktime_get_real_secondsh]j )}(hj h]hktime_get_real_seconds}(hj hhhNhNubah}(h]h ]jah"]h$]h&]uh1j hj ubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhjf hhhhhKVubjg)}(h(void)h]jm)}(hvoidh]js)}(hvoidh]hvoid}(hj hhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhj ubah}(h]h ]h"]h$]h&]noemphjdjeuh1jlhj ubah}(h]h ]h"]h$]h&]jdjeuh1jfhjf hhhhhKVubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhjb hhhhhKVubah}(h]jW ah ](jjeh"]h$]h&]jj)jhuh1hhhhKVhj_ hhubh)}(h+time64_t ktime_get_clocktai_seconds( void )h]j)}(h)time64_t ktime_get_clocktai_seconds(void)h](h)}(hhh]j )}(htime64_th]htime64_t}(hj hhhNhNubah}(h]h ]jah"]h$]h&]uh1j hj ubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetj modnameN classnameNj)j,)}j/]j2)}j%ktime_get_clocktai_secondssbc.ktime_get_clocktai_secondsasbuh1hhj hhhhhKVubj9)}(h h]h }(hj hhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hj hhhhhKVubjJ)}(hktime_get_clocktai_secondsh]j )}(hj h]hktime_get_clocktai_seconds}(hj hhhNhNubah}(h]h ]jah"]h$]h&]uh1j hj ubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhj hhhhhKVubjg)}(h(void)h]jm)}(hvoidh]js)}(hvoidh]hvoid}(hj; hhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhj7 ubah}(h]h ]h"]h$]h&]noemphjdjeuh1jlhj3 ubah}(h]h ]h"]h$]h&]jdjeuh1jfhj hhhhhKVubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhj hhhhhKVubah}(h]jZ ah ](jjeh"]h$]h&]jj)jhuh1hhhhKVhj_ hhubh)}(h&time64_t ktime_get_raw_seconds( void )h]j)}(h$time64_t ktime_get_raw_seconds(void)h](h)}(hhh]j )}(htime64_th]htime64_t}(hjm hhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjj ubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetjo modnameN classnameNj)j,)}j/]j2)}j%ktime_get_raw_secondssbc.ktime_get_raw_secondsasbuh1hhjf hhhhhKVubj9)}(h h]h }(hj hhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjf hhhhhKVubjJ)}(hktime_get_raw_secondsh]j )}(hj h]hktime_get_raw_seconds}(hj hhhNhNubah}(h]h ]jah"]h$]h&]uh1j hj ubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhjf hhhhhKVubjg)}(h(void)h]jm)}(hvoidh]js)}(hvoidh]hvoid}(hj hhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhj ubah}(h]h ]h"]h$]h&]noemphjdjeuh1jlhj ubah}(h]h ]h"]h$]h&]jdjeuh1jfhjf hhhhhKVubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhjb hhhhhKVubah}(h]j] ah ](jjeh"]h$]h&]jj)jhuh1hhhhKVhj_ hhubj)}(hhh]h)}(hReturn a coarse-grained version of the time as a scalar time64_t. This avoids accessing the clock hardware and rounds down the seconds to the full seconds of the last timer tick using the respective reference.h]hReturn a coarse-grained version of the time as a scalar time64_t. This avoids accessing the clock hardware and rounds down the seconds to the full seconds of the last timer tick using the respective reference.}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK\hj hhubah}(h]h ]h"]h$]h&]uh1jhj_ hhhhhKVubeh}(h]h ](j#functioneh"]h$]h&]jj#jj jj jjjuh1hhhhjhhhNubeh}(h]'nanosecond-timespec64-and-second-outputah ]h"])nanosecond, timespec64, and second outputah$]h&]uh1hhhhhhhhKhhubh)}(h)ktime_t ktime_get_coarse_boottime( void )h]j)}(h'ktime_t ktime_get_coarse_boottime(void)h](h)}(hhh]j )}(hktime_th]hktime_t}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetjmodnameN classnameNj)j,)}j/]j2)}j%ktime_get_coarse_boottimesbc.ktime_get_coarse_boottimeasbuh1hhjhhhhhKfubj9)}(h h]h }(hjhhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjhhhhhKfubjJ)}(hktime_get_coarse_boottimeh]j )}(hjh]hktime_get_coarse_boottime}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhjhhhhhKfubjg)}(h(void)h]jm)}(hvoidh]js)}(hvoidh]hvoid}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhjubah}(h]h ]h"]h$]h&]noemphjdjeuh1jlhjubah}(h]h ]h"]h$]h&]jdjeuh1jfhjhhhhhKfubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhjhhhhhKfubah}(h]j6ah ](jjeh"]h$]h&]jj)jhuh1hhhhKfhj>hhubh)}(h%ktime_t ktime_get_coarse_real( void )h]j)}(h#ktime_t ktime_get_coarse_real(void)h](h)}(hhh]j )}(hktime_th]hktime_t}(hjLhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjIubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetjNmodnameN classnameNj)j,)}j/]j2)}j%ktime_get_coarse_realsbc.ktime_get_coarse_realasbuh1hhjEhhhhhKfubj9)}(h h]h }(hjmhhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjEhhhhhKfubjJ)}(hktime_get_coarse_realh]j )}(hjjh]hktime_get_coarse_real}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hj{ubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhjEhhhhhKfubjg)}(h(void)h]jm)}(hvoidh]js)}(hvoidh]hvoid}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhjubah}(h]h ]h"]h$]h&]noemphjdjeuh1jlhjubah}(h]h ]h"]h$]h&]jdjeuh1jfhjEhhhhhKfubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhjAhhhhhKfubah}(h]j9ah ](jjeh"]h$]h&]jj)jhuh1hhhhKfhj>hhubh)}(h)ktime_t ktime_get_coarse_clocktai( void )h]j)}(h'ktime_t ktime_get_coarse_clocktai(void)h](h)}(hhh]j )}(hktime_th]hktime_t}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetjmodnameN classnameNj)j,)}j/]j2)}j%ktime_get_coarse_clocktaisbc.ktime_get_coarse_clocktaiasbuh1hhjhhhhhKfubj9)}(h h]h }(hjhhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjhhhhhKfubjJ)}(hktime_get_coarse_clocktaih]j )}(hjh]hktime_get_coarse_clocktai}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhjhhhhhKfubjg)}(h(void)h]jm)}(hvoidh]js)}(hvoidh]hvoid}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhjubah}(h]h ]h"]h$]h&]noemphjdjeuh1jlhjubah}(h]h ]h"]h$]h&]jdjeuh1jfhjhhhhhKfubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhjhhhhhKfubah}(h]j<ah ](jjeh"]h$]h&]jj)jhuh1hhhhKfhj>hhubj)}(hhh]h}(h]h ]h"]h$]h&]uh1jhj>hhhhhKfubeh}(h]h ](j#functioneh"]h$]h&]jj#jjMjjMjjjuh1hhhhjhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries]((h ktime_get_coarse_ns (C function)c.ktime_get_coarse_nshNt(h)ktime_get_coarse_boottime_ns (C function)c.ktime_get_coarse_boottime_nshNt(h%ktime_get_coarse_real_ns (C function)c.ktime_get_coarse_real_nshNt(h)ktime_get_coarse_clocktai_ns (C function)c.ktime_get_coarse_clocktai_nshNteuh1hhjhhhNhNubh)}(hhh](h)}(hu64 ktime_get_coarse_ns( void )h]j)}(hu64 ktime_get_coarse_ns(void)h](h)}(hhh]j )}(hu64h]hu64}(hjvhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjsubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetjxmodnameN classnameNj)j,)}j/]j2)}j%ktime_get_coarse_nssbc.ktime_get_coarse_nsasbuh1hhjohhhhhKkubj9)}(h h]h }(hjhhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjohhhhhKkubjJ)}(hktime_get_coarse_nsh]j )}(hjh]hktime_get_coarse_ns}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhjohhhhhKkubjg)}(h(void)h]jm)}(hvoidh]js)}(hvoidh]hvoid}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhjubah}(h]h ]h"]h$]h&]noemphjdjeuh1jlhjubah}(h]h ]h"]h$]h&]jdjeuh1jfhjohhhhhKkubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhjkhhhhhKkubah}(h]j]ah ](jjeh"]h$]h&]jj)jhuh1hhhhKkhjhhhubh)}(h(u64 ktime_get_coarse_boottime_ns( void )h]j)}(h&u64 ktime_get_coarse_boottime_ns(void)h](h)}(hhh]j )}(hu64h]hu64}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetjmodnameN classnameNj)j,)}j/]j2)}j%ktime_get_coarse_boottime_nssbc.ktime_get_coarse_boottime_nsasbuh1hhjhhhhhKkubj9)}(h h]h }(hjhhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjhhhhhKkubjJ)}(hktime_get_coarse_boottime_nsh]j )}(hjh]hktime_get_coarse_boottime_ns}(hj)hhhNhNubah}(h]h ]jah"]h$]h&]uh1j hj%ubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhjhhhhhKkubjg)}(h(void)h]jm)}(hvoidh]js)}(hvoidh]hvoid}(hjDhhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhj@ubah}(h]h ]h"]h$]h&]noemphjdjeuh1jlhj<ubah}(h]h ]h"]h$]h&]jdjeuh1jfhjhhhhhKkubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhjhhhhhKkubah}(h]j`ah ](jjeh"]h$]h&]jj)jhuh1hhhhKkhjhhhubh)}(h$u64 ktime_get_coarse_real_ns( void )h]j)}(h"u64 ktime_get_coarse_real_ns(void)h](h)}(hhh]j )}(hu64h]hu64}(hjvhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjsubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetjxmodnameN classnameNj)j,)}j/]j2)}j%ktime_get_coarse_real_nssbc.ktime_get_coarse_real_nsasbuh1hhjohhhhhKkubj9)}(h h]h }(hjhhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjohhhhhKkubjJ)}(hktime_get_coarse_real_nsh]j )}(hjh]hktime_get_coarse_real_ns}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhjohhhhhKkubjg)}(h(void)h]jm)}(hvoidh]js)}(hvoidh]hvoid}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhjubah}(h]h ]h"]h$]h&]noemphjdjeuh1jlhjubah}(h]h ]h"]h$]h&]jdjeuh1jfhjohhhhhKkubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhjkhhhhhKkubah}(h]jcah ](jjeh"]h$]h&]jj)jhuh1hhhhKkhjhhhubh)}(h(u64 ktime_get_coarse_clocktai_ns( void )h]j)}(h&u64 ktime_get_coarse_clocktai_ns(void)h](h)}(hhh]j )}(hu64h]hu64}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetjmodnameN classnameNj)j,)}j/]j2)}j%ktime_get_coarse_clocktai_nssbc.ktime_get_coarse_clocktai_nsasbuh1hhjhhhhhKkubj9)}(h h]h }(hjhhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjhhhhhKkubjJ)}(hktime_get_coarse_clocktai_nsh]j )}(hjh]hktime_get_coarse_clocktai_ns}(hj)hhhNhNubah}(h]h ]jah"]h$]h&]uh1j hj%ubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhjhhhhhKkubjg)}(h(void)h]jm)}(hvoidh]js)}(hvoidh]hvoid}(hjDhhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhj@ubah}(h]h ]h"]h$]h&]noemphjdjeuh1jlhj<ubah}(h]h ]h"]h$]h&]jdjeuh1jfhjhhhhhKkubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhjhhhhhKkubah}(h]jfah ](jjeh"]h$]h&]jj)jhuh1hhhhKkhjhhhubj)}(hhh]h}(h]h ]h"]h$]h&]uh1jhjhhhhhhKkubeh}(h]h ](j#functioneh"]h$]h&]jj#jjwjjwjjjuh1hhhhjhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries]((h"ktime_get_coarse_ts64 (C function)c.ktime_get_coarse_ts64hNt(h+ktime_get_coarse_boottime_ts64 (C function) c.ktime_get_coarse_boottime_ts64hNt(h'ktime_get_coarse_real_ts64 (C function)c.ktime_get_coarse_real_ts64hNt(h+ktime_get_coarse_clocktai_ts64 (C function) c.ktime_get_coarse_clocktai_ts64hNteuh1hhjhhhhhNubh)}(hhh](h)}(h1void ktime_get_coarse_ts64( struct timespec64 * )h]j)}(h.void ktime_get_coarse_ts64(struct timespec64*)h](js)}(hvoidh]hvoid}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhjhhhhhKpubj9)}(h h]h }(hjhhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjhhhhhKpubjJ)}(hktime_get_coarse_ts64h]j )}(hktime_get_coarse_ts64h]hktime_get_coarse_ts64}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhjhhhhhKpubjg)}(h(struct timespec64*)h]jm)}(hstruct timespec64*h](j)}(hjh]hstruct}(hjhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjubj9)}(h h]h }(hjhhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjubh)}(hhh]j )}(h timespec64h]h timespec64}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetjmodnameN classnameNj)j,)}j/]j2)}j%jsbc.ktime_get_coarse_ts64asbuh1hhjubj^)}(hjah]h*}(hjhhhNhNubah}(h]h ]jjah"]h$]h&]uh1j]hjubeh}(h]h ]h"]h$]h&]noemphjdjeuh1jlhjubah}(h]h ]h"]h$]h&]jdjeuh1jfhjhhhhhKpubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhjhhhhhKpubah}(h]jah ](jjeh"]h$]h&]jj)jhuh1hhhhKphjhhubh)}(h:void ktime_get_coarse_boottime_ts64( struct timespec64 * )h]j)}(h7void ktime_get_coarse_boottime_ts64(struct timespec64*)h](js)}(hvoidh]hvoid}(hjEhhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhjAhhhhhKpubj9)}(h h]h }(hjShhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjAhhhhhKpubjJ)}(hktime_get_coarse_boottime_ts64h]j )}(hktime_get_coarse_boottime_ts64h]hktime_get_coarse_boottime_ts64}(hjehhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjaubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhjAhhhhhKpubjg)}(h(struct timespec64*)h]jm)}(hstruct timespec64*h](j)}(hjh]hstruct}(hjhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj}ubj9)}(h h]h }(hjhhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hj}ubh)}(hhh]j )}(h timespec64h]h timespec64}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetjmodnameN classnameNj)j,)}j/]j2)}j%jgsb c.ktime_get_coarse_boottime_ts64asbuh1hhj}ubj^)}(hjah]h*}(hjhhhNhNubah}(h]h ]jjah"]h$]h&]uh1j]hj}ubeh}(h]h ]h"]h$]h&]noemphjdjeuh1jlhjyubah}(h]h ]h"]h$]h&]jdjeuh1jfhjAhhhhhKpubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhj=hhhhhKpubah}(h]jah ](jjeh"]h$]h&]jj)jhuh1hhhhKphjhhubh)}(h6void ktime_get_coarse_real_ts64( struct timespec64 * )h]j)}(h3void ktime_get_coarse_real_ts64(struct timespec64*)h](js)}(hvoidh]hvoid}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhjhhhhhKpubj9)}(h h]h }(hjhhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjhhhhhKpubjJ)}(hktime_get_coarse_real_ts64h]j )}(hktime_get_coarse_real_ts64h]hktime_get_coarse_real_ts64}(hj hhhNhNubah}(h]h ]jah"]h$]h&]uh1j hj ubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhjhhhhhKpubjg)}(h(struct timespec64*)h]jm)}(hstruct timespec64*h](j)}(hjh]hstruct}(hj)hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj%ubj9)}(h h]h }(hj6hhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hj%ubh)}(hhh]j )}(h timespec64h]h timespec64}(hjGhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjDubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetjImodnameN classnameNj)j,)}j/]j2)}j%jsbc.ktime_get_coarse_real_ts64asbuh1hhj%ubj^)}(hjah]h*}(hjghhhNhNubah}(h]h ]jjah"]h$]h&]uh1j]hj%ubeh}(h]h ]h"]h$]h&]noemphjdjeuh1jlhj!ubah}(h]h ]h"]h$]h&]jdjeuh1jfhjhhhhhKpubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhjhhhhhKpubah}(h]jah ](jjeh"]h$]h&]jj)jhuh1hhhhKphjhhubh)}(h:void ktime_get_coarse_clocktai_ts64( struct timespec64 * )h]j)}(h7void ktime_get_coarse_clocktai_ts64(struct timespec64*)h](js)}(hvoidh]hvoid}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhjhhhhhKpubj9)}(h h]h }(hjhhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjhhhhhKpubjJ)}(hktime_get_coarse_clocktai_ts64h]j )}(hktime_get_coarse_clocktai_ts64h]hktime_get_coarse_clocktai_ts64}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhjhhhhhKpubjg)}(h(struct timespec64*)h]jm)}(hstruct timespec64*h](j)}(hjh]hstruct}(hjhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjubj9)}(h h]h }(hjhhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjubh)}(hhh]j )}(h timespec64h]h timespec64}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetjmodnameN classnameNj)j,)}j/]j2)}j%jsb c.ktime_get_coarse_clocktai_ts64asbuh1hhjubj^)}(hjah]h*}(hjhhhNhNubah}(h]h ]jjah"]h$]h&]uh1j]hjubeh}(h]h ]h"]h$]h&]noemphjdjeuh1jlhjubah}(h]h ]h"]h$]h&]jdjeuh1jfhjhhhhhKpubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhjhhhhhKpubah}(h]jah ](jjeh"]h$]h&]jj)jhuh1hhhhKphjhhubj)}(hhh](h)}(hThese are quicker than the non-coarse versions, but less accurate, corresponding to CLOCK_MONOTONIC_COARSE and CLOCK_REALTIME_COARSE in user space, along with the equivalent boottime/tai/raw timebase not available in user space.h]hThese are quicker than the non-coarse versions, but less accurate, corresponding to CLOCK_MONOTONIC_COARSE and CLOCK_REALTIME_COARSE in user space, along with the equivalent boottime/tai/raw timebase not available in user space.}(hj8hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKuhj5hhubh)}(hXThe time returned here corresponds to the last timer tick, which may be as much as 10ms in the past (for CONFIG_HZ=100), same as reading the 'jiffies' variable. These are only useful when called in a fast path and one still expects better than second accuracy, but can't easily use 'jiffies', e.g. for inode timestamps. Skipping the hardware clock access saves around 100 CPU cycles on most modern machines with a reliable cycle counter, but up to several microseconds on older hardware with an external clocksource.h]hXThe time returned here corresponds to the last timer tick, which may be as much as 10ms in the past (for CONFIG_HZ=100), same as reading the ‘jiffies’ variable. These are only useful when called in a fast path and one still expects better than second accuracy, but can’t easily use ‘jiffies’, e.g. for inode timestamps. Skipping the hardware clock access saves around 100 CPU cycles on most modern machines with a reliable cycle counter, but up to several microseconds on older hardware with an external clocksource.}(hjFhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKzhj5hhubeh}(h]h ]h"]h$]h&]uh1jhjhhhhhKpubeh}(h]h ](j#functioneh"]h$]h&]jj#jj]jj]jjjuh1hhhhjhhhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries]((h#ktime_get_mono_fast_ns (C function)c.ktime_get_mono_fast_nshNt(h"ktime_get_raw_fast_ns (C function)c.ktime_get_raw_fast_nshNt(h#ktime_get_boot_fast_ns (C function)c.ktime_get_boot_fast_nshNt(h"ktime_get_tai_fast_ns (C function)c.ktime_get_tai_fast_nshNt(h#ktime_get_real_fast_ns (C function)c.ktime_get_real_fast_nshNteuh1hhjhhhhhNubh)}(hhh](h)}(h"u64 ktime_get_mono_fast_ns( void )h]j)}(h u64 ktime_get_mono_fast_ns(void)h](h)}(hhh]j )}(hu64h]hu64}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetjmodnameN classnameNj)j,)}j/]j2)}j%ktime_get_mono_fast_nssbc.ktime_get_mono_fast_nsasbuh1hhjhhhhhKubj9)}(h h]h }(hjhhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjhhhhhKubjJ)}(hktime_get_mono_fast_nsh]j )}(hjh]hktime_get_mono_fast_ns}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhjhhhhhKubjg)}(h(void)h]jm)}(hvoidh]js)}(hvoidh]hvoid}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhjubah}(h]h ]h"]h$]h&]noemphjdjeuh1jlhjubah}(h]h ]h"]h$]h&]jdjeuh1jfhjhhhhhKubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhj~hhhhhKubah}(h]jmah ](jjeh"]h$]h&]jj)jhuh1hhhhKhj{hhubh)}(h!u64 ktime_get_raw_fast_ns( void )h]j)}(hu64 ktime_get_raw_fast_ns(void)h](h)}(hhh]j )}(hu64h]hu64}(hj hhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetj modnameN classnameNj)j,)}j/]j2)}j%ktime_get_raw_fast_nssbc.ktime_get_raw_fast_nsasbuh1hhjhhhhhKubj9)}(h h]h }(hj*hhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjhhhhhKubjJ)}(hktime_get_raw_fast_nsh]j )}(hj'h]hktime_get_raw_fast_ns}(hj<hhhNhNubah}(h]h ]jah"]h$]h&]uh1j hj8ubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhjhhhhhKubjg)}(h(void)h]jm)}(hvoidh]js)}(hvoidh]hvoid}(hjWhhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhjSubah}(h]h ]h"]h$]h&]noemphjdjeuh1jlhjOubah}(h]h ]h"]h$]h&]jdjeuh1jfhjhhhhhKubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhjhhhhhKubah}(h]jpah ](jjeh"]h$]h&]jj)jhuh1hhhhKhj{hhubh)}(h"u64 ktime_get_boot_fast_ns( void )h]j)}(h u64 ktime_get_boot_fast_ns(void)h](h)}(hhh]j )}(hu64h]hu64}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetjmodnameN classnameNj)j,)}j/]j2)}j%ktime_get_boot_fast_nssbc.ktime_get_boot_fast_nsasbuh1hhjhhhhhKubj9)}(h h]h }(hjhhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjhhhhhKubjJ)}(hktime_get_boot_fast_nsh]j )}(hjh]hktime_get_boot_fast_ns}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhjhhhhhKubjg)}(h(void)h]jm)}(hvoidh]js)}(hvoidh]hvoid}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhjubah}(h]h ]h"]h$]h&]noemphjdjeuh1jlhjubah}(h]h ]h"]h$]h&]jdjeuh1jfhjhhhhhKubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhj~hhhhhKubah}(h]jsah ](jjeh"]h$]h&]jj)jhuh1hhhhKhj{hhubh)}(h!u64 ktime_get_tai_fast_ns( void )h]j)}(hu64 ktime_get_tai_fast_ns(void)h](h)}(hhh]j )}(hu64h]hu64}(hj hhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetj modnameN classnameNj)j,)}j/]j2)}j%ktime_get_tai_fast_nssbc.ktime_get_tai_fast_nsasbuh1hhjhhhhhKubj9)}(h h]h }(hj*hhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjhhhhhKubjJ)}(hktime_get_tai_fast_nsh]j )}(hj'h]hktime_get_tai_fast_ns}(hj<hhhNhNubah}(h]h ]jah"]h$]h&]uh1j hj8ubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhjhhhhhKubjg)}(h(void)h]jm)}(hvoidh]js)}(hvoidh]hvoid}(hjWhhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhjSubah}(h]h ]h"]h$]h&]noemphjdjeuh1jlhjOubah}(h]h ]h"]h$]h&]jdjeuh1jfhjhhhhhKubeah}(h]h ]h"]h$]h&]jdjejuh1jjjhjhhhhhKubah}(h]jvah ](jjeh"]h$]h&]jj)jhuh1hhhhKhj{hhubh)}(h"u64 ktime_get_real_fast_ns( void )h]j)}(h u64 ktime_get_real_fast_ns(void)h](h)}(hhh]j )}(hu64h]hu64}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetjmodnameN classnameNj)j,)}j/]j2)}j%ktime_get_real_fast_nssbc.ktime_get_real_fast_nsasbuh1hhjhhhhhKubj9)}(h h]h }(hjhhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjhhhhhKubjJ)}(hktime_get_real_fast_nsh]j )}(hjh]hktime_get_real_fast_ns}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhjhhhhhKubjg)}(h(void)h]jm)}(hvoidh]js)}(hvoidh]hvoid}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhjubah}(h]h ]h"]h$]h&]noemphjdjeuh1jlhjubah}(h]h ]h"]h$]h&]jdjeuh1jfhjhhhhhKubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhj~hhhhhKubah}(h]jyah ](jjeh"]h$]h&]jj)jhuh1hhhhKhj{hhubj)}(hhh]h)}(hXzThese variants are safe to call from any context, including from a non-maskable interrupt (NMI) during a timekeeper update, and while we are entering suspend with the clocksource powered down. This is useful in some tracing or debugging code as well as machine check reporting, but most drivers should never call them, since the time is allowed to jump under certain conditions.h]hXzThese variants are safe to call from any context, including from a non-maskable interrupt (NMI) during a timekeeper update, and while we are entering suspend with the clocksource powered down. This is useful in some tracing or debugging code as well as machine check reporting, but most drivers should never call them, since the time is allowed to jump under certain conditions.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjhhubah}(h]h ]h"]h$]h&]uh1jhj{hhhhhKubeh}(h]h ](j#functioneh"]h$]h&]jj#jjjjjjjuh1hhhhjhhhNubeh}(h]coarse-and-fast-ns-accessah ]h"]coarse and fast_ns accessah$]h&]uh1hhhhhhhhKbubh)}(hhh](h)}(hDeprecated time interfacesh]hDeprecated time interfaces}(hj'hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj$hhhhhKubh)}(hXTOlder kernels used some other interfaces that are now being phased out but may appear in third-party drivers being ported here. In particular, all interfaces returning a 'struct timeval' or 'struct timespec' have been replaced because the tv_sec member overflows in year 2038 on 32-bit architectures. These are the recommended replacements:h]hX\Older kernels used some other interfaces that are now being phased out but may appear in third-party drivers being ported here. In particular, all interfaces returning a ‘struct timeval’ or ‘struct timespec’ have been replaced because the tv_sec member overflows in year 2038 on 32-bit architectures. These are the recommended replacements:}(hj5hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhj$hhubh)}(hhh]h}(h]h ]h"]h$]h&]entries](hktime_get_ts (C function)c.ktime_get_tshNtauh1hhj$hhhhhNubh)}(hhh](h)}(h&void ktime_get_ts( struct timespec * )h]j)}(h#void ktime_get_ts(struct timespec*)h](js)}(hvoidh]hvoid}(hj\hhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhjXhhhhhKubj9)}(h h]h }(hjjhhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjXhhhhhKubjJ)}(h ktime_get_tsh]j )}(h ktime_get_tsh]h ktime_get_ts}(hj|hhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjxubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhjXhhhhhKubjg)}(h(struct timespec*)h]jm)}(hstruct timespec*h](j)}(hjh]hstruct}(hjhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjubj9)}(h h]h }(hjhhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjubh)}(hhh]j )}(htimespech]htimespec}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetjmodnameN classnameNj)j,)}j/]j2)}j%j~sbc.ktime_get_tsasbuh1hhjubj^)}(hjah]h*}(hjhhhNhNubah}(h]h ]jjah"]h$]h&]uh1j]hjubeh}(h]h ]h"]h$]h&]noemphjdjeuh1jlhjubah}(h]h ]h"]h$]h&]jdjeuh1jfhjXhhhhhKubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhjThhhhhKubah}(h]jOah ](jjeh"]h$]h&]jj)jhuh1hhhhKhjQhhubj)}(hhh]h)}(h,Use ktime_get() or ktime_get_ts64() instead.h]h,Use ktime_get() or ktime_get_ts64() instead.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjhhubah}(h]h ]h"]h$]h&]uh1jhjQhhhhhKubeh}(h]h ](j#functioneh"]h$]h&]jj#jjjjjjjuh1hhhhj$hhhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries]((hdo_gettimeofday (C function)c.do_gettimeofdayhNt(hgetnstimeofday (C function)c.getnstimeofdayhNt(hgetnstimeofday64 (C function)c.getnstimeofday64hNt(hktime_get_real_ts (C function)c.ktime_get_real_tshNteuh1hhj$hhhhhNubh)}(hhh](h)}(h(void do_gettimeofday( struct timeval * )h]j)}(h%void do_gettimeofday(struct timeval*)h](js)}(hvoidh]hvoid}(hj<hhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhj8hhhhhKubj9)}(h h]h }(hjJhhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hj8hhhhhKubjJ)}(hdo_gettimeofdayh]j )}(hdo_gettimeofdayh]hdo_gettimeofday}(hj\hhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjXubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhj8hhhhhKubjg)}(h(struct timeval*)h]jm)}(hstruct timeval*h](j)}(hjh]hstruct}(hjxhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjtubj9)}(h h]h }(hjhhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjtubh)}(hhh]j )}(htimevalh]htimeval}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetjmodnameN classnameNj)j,)}j/]j2)}j%j^sbc.do_gettimeofdayasbuh1hhjtubj^)}(hjah]h*}(hjhhhNhNubah}(h]h ]jjah"]h$]h&]uh1j]hjtubeh}(h]h ]h"]h$]h&]noemphjdjeuh1jlhjpubah}(h]h ]h"]h$]h&]jdjeuh1jfhj8hhhhhKubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhj4hhhhhKubah}(h]j&ah ](jjeh"]h$]h&]jj)jhuh1hhhhKhj1hhubh)}(h(void getnstimeofday( struct timespec * )h]j)}(h%void getnstimeofday(struct timespec*)h](js)}(hvoidh]hvoid}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhjhhhhhKubj9)}(h h]h }(hjhhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjhhhhhKubjJ)}(hgetnstimeofdayh]j )}(hgetnstimeofdayh]hgetnstimeofday}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhjhhhhhKubjg)}(h(struct timespec*)h]jm)}(hstruct timespec*h](j)}(hjh]hstruct}(hj hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjubj9)}(h h]h }(hj-hhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjubh)}(hhh]j )}(htimespech]htimespec}(hj>hhhNhNubah}(h]h ]jah"]h$]h&]uh1j hj;ubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetj@modnameN classnameNj)j,)}j/]j2)}j%jsbc.getnstimeofdayasbuh1hhjubj^)}(hjah]h*}(hj^hhhNhNubah}(h]h ]jjah"]h$]h&]uh1j]hjubeh}(h]h ]h"]h$]h&]noemphjdjeuh1jlhjubah}(h]h ]h"]h$]h&]jdjeuh1jfhjhhhhhKubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhjhhhhhKubah}(h]j)ah ](jjeh"]h$]h&]jj)jhuh1hhhhKhj1hhubh)}(h,void getnstimeofday64( struct timespec64 * )h]j)}(h)void getnstimeofday64(struct timespec64*)h](js)}(hvoidh]hvoid}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhjhhhhhKubj9)}(h h]h }(hjhhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjhhhhhKubjJ)}(hgetnstimeofday64h]j )}(hgetnstimeofday64h]hgetnstimeofday64}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhjhhhhhKubjg)}(h(struct timespec64*)h]jm)}(hstruct timespec64*h](j)}(hjh]hstruct}(hjhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjubj9)}(h h]h }(hjhhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjubh)}(hhh]j )}(h timespec64h]h timespec64}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetjmodnameN classnameNj)j,)}j/]j2)}j%jsbc.getnstimeofday64asbuh1hhjubj^)}(hjah]h*}(hjhhhNhNubah}(h]h ]jjah"]h$]h&]uh1j]hjubeh}(h]h ]h"]h$]h&]noemphjdjeuh1jlhjubah}(h]h ]h"]h$]h&]jdjeuh1jfhjhhhhhKubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhjhhhhhKubah}(h]j,ah ](jjeh"]h$]h&]jj)jhuh1hhhhKhj1hhubh)}(h+void ktime_get_real_ts( struct timespec * )h]j)}(h(void ktime_get_real_ts(struct timespec*)h](js)}(hvoidh]hvoid}(hj4hhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhj0hhhhhKubj9)}(h h]h }(hjBhhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hj0hhhhhKubjJ)}(hktime_get_real_tsh]j )}(hktime_get_real_tsh]hktime_get_real_ts}(hjThhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjPubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhj0hhhhhKubjg)}(h(struct timespec*)h]jm)}(hstruct timespec*h](j)}(hjh]hstruct}(hjphhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjlubj9)}(h h]h }(hj}hhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjlubh)}(hhh]j )}(htimespech]htimespec}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetjmodnameN classnameNj)j,)}j/]j2)}j%jVsbc.ktime_get_real_tsasbuh1hhjlubj^)}(hjah]h*}(hjhhhNhNubah}(h]h ]jjah"]h$]h&]uh1j]hjlubeh}(h]h ]h"]h$]h&]noemphjdjeuh1jlhjhubah}(h]h ]h"]h$]h&]jdjeuh1jfhj0hhhhhKubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhj,hhhhhKubah}(h]j/ah ](jjeh"]h$]h&]jj)jhuh1hhhhKhj1hhubj)}(hhh]h)}(hktime_get_real_ts64() is a direct replacement, but consider using monotonic time (ktime_get_ts64()) and/or a ktime_t based interface (ktime_get()/ktime_get_real()).h]hktime_get_real_ts64() is a direct replacement, but consider using monotonic time (ktime_get_ts64()) and/or a ktime_t based interface (ktime_get()/ktime_get_real()).}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjhhubah}(h]h ]h"]h$]h&]uh1jhj1hhhhhKubeh}(h]h ](j#functioneh"]h$]h&]jj#jjjjjjjuh1hhhhj$hhhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries]((h current_kernel_time (C function)c.current_kernel_timehNt(h"current_kernel_time64 (C function)c.current_kernel_time64hNt(h!get_monotonic_coarse (C function)c.get_monotonic_coarsehNt(h#get_monotonic_coarse64 (C function)c.get_monotonic_coarse64hNteuh1hhj$hhhhhNubh)}(hhh](h)}(h+struct timespec current_kernel_time( void )h]j)}(h)struct timespec current_kernel_time(void)h](j)}(hjh]hstruct}(hjhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjhhhhhKubj9)}(h h]h }(hj!hhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjhhhhhKubh)}(hhh]j )}(htimespech]htimespec}(hj2hhhNhNubah}(h]h ]jah"]h$]h&]uh1j hj/ubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetj4modnameN classnameNj)j,)}j/]j2)}j%current_kernel_timesbc.current_kernel_timeasbuh1hhjhhhhhKubj9)}(h h]h }(hjShhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjhhhhhKubjJ)}(hcurrent_kernel_timeh]j )}(hjPh]hcurrent_kernel_time}(hjehhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjaubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhjhhhhhKubjg)}(h(void)h]jm)}(hvoidh]js)}(hvoidh]hvoid}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhj|ubah}(h]h ]h"]h$]h&]noemphjdjeuh1jlhjxubah}(h]h ]h"]h$]h&]jdjeuh1jfhjhhhhhKubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhj hhhhhKubah}(h]jah ](jjeh"]h$]h&]jj)jhuh1hhhhKhj hhubh)}(h/struct timespec64 current_kernel_time64( void )h]j)}(h-struct timespec64 current_kernel_time64(void)h](j)}(hjh]hstruct}(hjhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjhhhhhKubj9)}(h h]h }(hjhhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjhhhhhKubh)}(hhh]j )}(h timespec64h]h timespec64}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetjmodnameN classnameNj)j,)}j/]j2)}j%current_kernel_time64sbc.current_kernel_time64asbuh1hhjhhhhhKubj9)}(h h]h }(hjhhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjhhhhhKubjJ)}(hcurrent_kernel_time64h]j )}(hjh]hcurrent_kernel_time64}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhjhhhhhKubjg)}(h(void)h]jm)}(hvoidh]js)}(hvoidh]hvoid}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhjubah}(h]h ]h"]h$]h&]noemphjdjeuh1jlhjubah}(h]h ]h"]h$]h&]jdjeuh1jfhjhhhhhKubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhjhhhhhKubah}(h]jah ](jjeh"]h$]h&]jj)jhuh1hhhhKhj hhubh)}(h,struct timespec get_monotonic_coarse( void )h]j)}(h*struct timespec get_monotonic_coarse(void)h](j)}(hjh]hstruct}(hjJhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjFhhhhhKubj9)}(h h]h }(hjWhhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjFhhhhhKubh)}(hhh]j )}(htimespech]htimespec}(hjhhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjeubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetjjmodnameN classnameNj)j,)}j/]j2)}j%get_monotonic_coarsesbc.get_monotonic_coarseasbuh1hhjFhhhhhKubj9)}(h h]h }(hjhhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjFhhhhhKubjJ)}(hget_monotonic_coarseh]j )}(hjh]hget_monotonic_coarse}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhjFhhhhhKubjg)}(h(void)h]jm)}(hvoidh]js)}(hvoidh]hvoid}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhjubah}(h]h ]h"]h$]h&]noemphjdjeuh1jlhjubah}(h]h ]h"]h$]h&]jdjeuh1jfhjFhhhhhKubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhjBhhhhhKubah}(h]jah ](jjeh"]h$]h&]jj)jhuh1hhhhKhj hhubh)}(h0struct timespec64 get_monotonic_coarse64( void )h]j)}(h.struct timespec64 get_monotonic_coarse64(void)h](j)}(hjh]hstruct}(hjhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjhhhhhKubj9)}(h h]h }(hjhhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjhhhhhKubh)}(hhh]j )}(h timespec64h]h timespec64}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetjmodnameN classnameNj)j,)}j/]j2)}j%get_monotonic_coarse64sbc.get_monotonic_coarse64asbuh1hhjhhhhhKubj9)}(h h]h }(hj$hhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjhhhhhKubjJ)}(hget_monotonic_coarse64h]j )}(hj!h]hget_monotonic_coarse64}(hj6hhhNhNubah}(h]h ]jah"]h$]h&]uh1j hj2ubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhjhhhhhKubjg)}(h(void)h]jm)}(hvoidh]js)}(hvoidh]hvoid}(hjQhhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhjMubah}(h]h ]h"]h$]h&]noemphjdjeuh1jlhjIubah}(h]h ]h"]h$]h&]jdjeuh1jfhjhhhhhKubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhjhhhhhKubah}(h]jah ](jjeh"]h$]h&]jj)jhuh1hhhhKhj hhubj)}(hhh]h)}(hThese are replaced by ktime_get_coarse_real_ts64() and ktime_get_coarse_ts64(). However, A lot of code that wants coarse-grained times can use the simple 'jiffies' instead, while some drivers may actually want the higher resolution accessors these days.h]hXThese are replaced by ktime_get_coarse_real_ts64() and ktime_get_coarse_ts64(). However, A lot of code that wants coarse-grained times can use the simple ‘jiffies’ instead, while some drivers may actually want the higher resolution accessors these days.}(hj{hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjxhhubah}(h]h ]h"]h$]h&]uh1jhj hhhhhKubeh}(h]h ](j#functioneh"]h$]h&]jj#jjjjjjjuh1hhhhj$hhhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries]((hgetrawmonotonic (C function)c.getrawmonotonichNt(hgetrawmonotonic64 (C function)c.getrawmonotonic64hNt(h!timekeeping_clocktai (C function)c.timekeeping_clocktaihNt(h#timekeeping_clocktai64 (C function)c.timekeeping_clocktai64hNt(h#get_monotonic_boottime (C function)c.get_monotonic_boottimehNt(h%get_monotonic_boottime64 (C function)c.get_monotonic_boottime64hNteuh1hhj$hhhhhNubh)}(hhh](h)}(h'struct timespec getrawmonotonic( void )h]j)}(h%struct timespec getrawmonotonic(void)h](j)}(hjh]hstruct}(hjhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjhhhhhKubj9)}(h h]h }(hjhhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjhhhhhKubh)}(hhh]j )}(htimespech]htimespec}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetjmodnameN classnameNj)j,)}j/]j2)}j%getrawmonotonicsbc.getrawmonotonicasbuh1hhjhhhhhKubj9)}(h h]h }(hjhhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjhhhhhKubjJ)}(hgetrawmonotonich]j )}(hjh]hgetrawmonotonic}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hj ubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhjhhhhhKubjg)}(h(void)h]jm)}(hvoidh]js)}(hvoidh]hvoid}(hj*hhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhj&ubah}(h]h ]h"]h$]h&]noemphjdjeuh1jlhj"ubah}(h]h ]h"]h$]h&]jdjeuh1jfhjhhhhhKubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhjhhhhhKubah}(h]jah ](jjeh"]h$]h&]jj)jhuh1hhhhKhjhhubh)}(h+struct timespec64 getrawmonotonic64( void )h]j)}(h)struct timespec64 getrawmonotonic64(void)h](j)}(hjh]hstruct}(hjYhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjUhhhhhKubj9)}(h h]h }(hjfhhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjUhhhhhKubh)}(hhh]j )}(h timespec64h]h timespec64}(hjwhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjtubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetjymodnameN classnameNj)j,)}j/]j2)}j%getrawmonotonic64sbc.getrawmonotonic64asbuh1hhjUhhhhhKubj9)}(h h]h }(hjhhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjUhhhhhKubjJ)}(hgetrawmonotonic64h]j )}(hjh]hgetrawmonotonic64}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhjUhhhhhKubjg)}(h(void)h]jm)}(hvoidh]js)}(hvoidh]hvoid}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhjubah}(h]h ]h"]h$]h&]noemphjdjeuh1jlhjubah}(h]h ]h"]h$]h&]jdjeuh1jfhjUhhhhhKubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhjQhhhhhKubah}(h]jah ](jjeh"]h$]h&]jj)jhuh1hhhhKhjhhubh)}(h,struct timespec timekeeping_clocktai( void )h]j)}(h*struct timespec timekeeping_clocktai(void)h](j)}(hjh]hstruct}(hjhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjhhhhhKubj9)}(h h]h }(hj hhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjhhhhhKubh)}(hhh]j )}(htimespech]htimespec}(hj hhhNhNubah}(h]h ]jah"]h$]h&]uh1j hj ubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetj modnameN classnameNj)j,)}j/]j2)}j%timekeeping_clocktaisbc.timekeeping_clocktaiasbuh1hhjhhhhhKubj9)}(h h]h }(hj3 hhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hjhhhhhKubjJ)}(htimekeeping_clocktaih]j )}(hj0 h]htimekeeping_clocktai}(hjE hhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjA ubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhjhhhhhKubjg)}(h(void)h]jm)}(hvoidh]js)}(hvoidh]hvoid}(hj` hhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhj\ ubah}(h]h ]h"]h$]h&]noemphjdjeuh1jlhjX ubah}(h]h ]h"]h$]h&]jdjeuh1jfhjhhhhhKubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhjhhhhhKubah}(h]jah ](jjeh"]h$]h&]jj)jhuh1hhhhKhjhhubh)}(h0struct timespec64 timekeeping_clocktai64( void )h]j)}(h.struct timespec64 timekeeping_clocktai64(void)h](j)}(hjh]hstruct}(hj hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj hhhhhKubj9)}(h h]h }(hj hhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hj hhhhhKubh)}(hhh]j )}(h timespec64h]h timespec64}(hj hhhNhNubah}(h]h ]jah"]h$]h&]uh1j hj ubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetj modnameN classnameNj)j,)}j/]j2)}j%timekeeping_clocktai64sbc.timekeeping_clocktai64asbuh1hhj hhhhhKubj9)}(h h]h }(hj hhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hj hhhhhKubjJ)}(htimekeeping_clocktai64h]j )}(hj h]htimekeeping_clocktai64}(hj hhhNhNubah}(h]h ]jah"]h$]h&]uh1j hj ubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhj hhhhhKubjg)}(h(void)h]jm)}(hvoidh]js)}(hvoidh]hvoid}(hj hhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhj ubah}(h]h ]h"]h$]h&]noemphjdjeuh1jlhj ubah}(h]h ]h"]h$]h&]jdjeuh1jfhj hhhhhKubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhj hhhhhKubah}(h]jah ](jjeh"]h$]h&]jj)jhuh1hhhhKhjhhubh)}(h.struct timespec get_monotonic_boottime( void )h]j)}(h,struct timespec get_monotonic_boottime(void)h](j)}(hjh]hstruct}(hj*!hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj&!hhhhhKubj9)}(h h]h }(hj7!hhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hj&!hhhhhKubh)}(hhh]j )}(htimespech]htimespec}(hjH!hhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjE!ubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetjJ!modnameN classnameNj)j,)}j/]j2)}j%get_monotonic_boottimesbc.get_monotonic_boottimeasbuh1hhj&!hhhhhKubj9)}(h h]h }(hji!hhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hj&!hhhhhKubjJ)}(hget_monotonic_boottimeh]j )}(hjf!h]hget_monotonic_boottime}(hj{!hhhNhNubah}(h]h ]jah"]h$]h&]uh1j hjw!ubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhj&!hhhhhKubjg)}(h(void)h]jm)}(hvoidh]js)}(hvoidh]hvoid}(hj!hhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhj!ubah}(h]h ]h"]h$]h&]noemphjdjeuh1jlhj!ubah}(h]h ]h"]h$]h&]jdjeuh1jfhj&!hhhhhKubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhj"!hhhhhKubah}(h]jah ](jjeh"]h$]h&]jj)jhuh1hhhhKhjhhubh)}(h2struct timespec64 get_monotonic_boottime64( void )h]j)}(h0struct timespec64 get_monotonic_boottime64(void)h](j)}(hjh]hstruct}(hj!hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj!hhhhhKubj9)}(h h]h }(hj!hhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hj!hhhhhKubh)}(hhh]j )}(h timespec64h]h timespec64}(hj!hhhNhNubah}(h]h ]jah"]h$]h&]uh1j hj!ubah}(h]h ]h"]h$]h&] refdomainj#reftypej% reftargetj!modnameN classnameNj)j,)}j/]j2)}j%get_monotonic_boottime64sbc.get_monotonic_boottime64asbuh1hhj!hhhhhKubj9)}(h h]h }(hj"hhhNhNubah}(h]h ]jEah"]h$]h&]uh1j8hj!hhhhhKubjJ)}(hget_monotonic_boottime64h]j )}(hj"h]hget_monotonic_boottime64}(hj"hhhNhNubah}(h]h ]jah"]h$]h&]uh1j hj"ubah}(h]h ](j_j`eh"]h$]h&]jdjeuh1jIhj!hhhhhKubjg)}(h(void)h]jm)}(hvoidh]js)}(hvoidh]hvoid}(hj1"hhhNhNubah}(h]h ]jah"]h$]h&]uh1jrhj-"ubah}(h]h ]h"]h$]h&]noemphjdjeuh1jlhj)"ubah}(h]h ]h"]h$]h&]jdjeuh1jfhj!hhhhhKubeh}(h]h ]h"]h$]h&]jdjejuh1jjjhj!hhhhhKubah}(h]jah ](jjeh"]h$]h&]jj)jhuh1hhhhKhjhhubj)}(hhh]h)}(hXCThese are replaced by ktime_get_raw()/ktime_get_raw_ts64(), ktime_get_clocktai()/ktime_get_clocktai_ts64() as well as ktime_get_boottime()/ktime_get_boottime_ts64(). However, if the particular choice of clock source is not important for the user, consider converting to ktime_get()/ktime_get_ts64() instead for consistency.h]hXCThese are replaced by ktime_get_raw()/ktime_get_raw_ts64(), ktime_get_clocktai()/ktime_get_clocktai_ts64() as well as ktime_get_boottime()/ktime_get_boottime_ts64(). However, if the particular choice of clock source is not important for the user, consider converting to ktime_get()/ktime_get_ts64() instead for consistency.}(hj["hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjX"hhubah}(h]h ]h"]h$]h&]uh1jhjhhhhhKubeh}(h]h ](j#functioneh"]h$]h&]jj#jjr"jjr"jjjuh1hhhhj$hhhNubeh}(h]deprecated-time-interfacesah ]h"]deprecated time interfacesah$]h&]uh1hhhhhhhhKubeh}(h]ktime-accessorsah ]h"]ktime accessorsah$]h&]uh1hhhhhhhhKubeh}(h]h ]h"]h$]h&]sourcehuh1hcurrent_sourceN current_lineNsettingsdocutils.frontendValues)}(hN generatorN datestampN source_linkN source_urlN toc_backlinksentryfootnote_backlinksK sectnum_xformKstrip_commentsNstrip_elements_with_classesN strip_classesN report_levelK halt_levelKexit_status_levelKdebugNwarning_streamN tracebackinput_encoding utf-8-siginput_encoding_error_handlerstrictoutput_encodingutf-8output_encoding_error_handlerj"error_encodingutf-8error_encoding_error_handlerbackslashreplace language_codeenrecord_dependenciesNconfigN id_prefixhauto_id_prefixid dump_settingsNdump_internalsNdump_transformsNdump_pseudo_xmlNexpose_internalsNstrict_visitorN_disable_configN_sourceh _destinationN _config_files]7/var/lib/git/docbuild/linux/Documentation/docutils.confafile_insertion_enabled raw_enabledKline_length_limitM'pep_referencesN pep_base_urlhttps://peps.python.org/pep_file_url_templatepep-%04drfc_referencesN rfc_base_url&https://datatracker.ietf.org/doc/html/ tab_widthKtrim_footnote_reference_spacesyntax_highlightlong smart_quotessmartquotes_locales]character_level_inline_markupdoctitle_xform docinfo_xformKsectsubtitle_xform image_loadinglinkembed_stylesheetcloak_email_addressessection_self_linkenvNubreporterNindirect_targets]substitution_defs}substitution_names}refnames}refids}nameids}(j"j"jjjjj!jj{"jx"u nametypes}(j"jjj!j{"uh}(j"hjhhhjjjjj^jcj'j,jjj jjjjjjjjjjjjjjj/ jj jj jQ jb jT j jW jb jZ j j] jb jjj3jAj6jj9jAj<jj]jkj`jjcjkjfjjjjj=jjjjjmj~jpjjsj~jvjjyj~jx"j$jOjTj&j4j)jj,jj/j,jj jjjjBjjjjjjQjjjj jj"!jj!u footnote_refs} citation_refs} autofootnotes]autofootnote_refs]symbol_footnotes]symbol_footnote_refs] footnotes] citations]autofootnote_startKsymbol_footnote_startK id_counter collectionsCounter}Rparse_messages]transform_messages] transformerN include_log] decorationNhhub.