STRUCT VDSO_TIME_DATA(9)
π¦ struct vdso_time_data(9) π¦
okay bestie, welcome to the Kernel API Manual β¨ this one's straight out of ./include/vdso and it's lowkey iconic β it's the vdso datapage representation, and yes, you're gonna want to take notes π
πΈ NAME πΈ
struct vdso_time_data β the vdso datapage representation, fr fr π«Ά
β¨ SYNOPSIS β¨
struct vdso_time_data {
struct arch_vdso_time_data arch_data;
struct vdso_clock clock_data[CS_BASES];
struct vdso_clock aux_clock_data[MAX_AUX_CLOCKS];
s32 tz_minuteswest;
s32 tz_dsttime;
u32 hrtimer_res;
u32 __unused;
};
like, that's the whole vibe. screenshot it, memorize it, whatever π
π Members π
arch_dataβ architecture specific data (it's optional, and it defaults to an empty struct β no cap, it just chills there empty if your arch doesn't need it) π§clock_dataβ clocksource related data, and it's an array, bestie πaux_clock_dataβ auxiliary clocksource related data, also an array π«tz_minuteswestβ minutes west of Greenwich π°οΈtz_dsttimeβ type of DST correction β°hrtimer_resβ hrtimer resolution π₯__unusedβ unused. that's it. that's the whole description. it's giving reserve-a-seat energy π
π Description π
okay so the big thing, the main character note: vdso_time_data will be accessed by 64 bit and compat code at the same time π so please, bestie, be careful before modifying this structure. like actually careful. not "i'll just tweak one field" careful. careful careful. π«Ά
and the ordering of the struct members? highkey genius of whoever did it β it's optimized so you get fast access to the often required struct members that are related to CLOCK_REALTIME and CLOCK_MONOTONIC β that info is stored in the first cache lines, so the hot stuff hits first and the vibe check passes immediately π
β¨
π SEE ALSO π
- Kernel file
./include/vdso/datapage.hπ struct vdso_timestamp(9)π°οΈstruct vdso_clock(9)β±οΈstruct vdso_rng_data(9)π²
and that's the page!! sourced from ./include/vdso, dated October 2026, and it's literally struct vdso_time_data(9) β slay, go forth and don't break compat code, i'm obsessed with u πππ¦
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms