STRUCT FUTEX_MM_DATA(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’œ struct futex_mm_data(9) β€” the Kernel API Manual moment

okay so bestie, welcome to the Kernel API Manual ✨ today we're looking at struct futex_mm_data, and it's literally the per-MM data that futexes keep around. That's it, that's the vibe. πŸ’…


🌸 NAME 🌸

struct futex_mm_data β€” Futex related per MM data 🫢


✨ SYNOPSIS ✨

Like, here's the whole shape of it, no cap:

struct futex_mm_data {
    struct futex_mm_phash           phash;
    struct futex_unlock_cs_ranges   unlock;
    atomic64_t unique_id;
 };

Three members, three little icons, all main character energy πŸ‘‘


πŸŽ€ Members πŸŽ€

  • phash β€” the futex private hash related data. yes bestie, private hash, it's giving secret little bookkeeping 🌸
  • unlock β€” the futex unlock VDSO critical sections. that's the unlock side of the VDSO crit-section situation, iconic πŸ”₯
  • unique_id β€” the unique ID of the MM, and it's specifically for FUT_OFF_MMSHARED futexes. an atomic64_t too, so it's fr fr out here being atomic πŸ’€βœ¨

πŸ¦‹ SEE ALSO πŸ¦‹

Kernel file ./include/linux/futex_types.h β€” plus these besties:

  • struct futex_sched_data(9)
  • struct futex_mm_phash(9)
  • struct futex_unlock_cs_range(9)
  • struct futex_unlock_cs_ranges(9)

go read them, iykyk πŸ‘€πŸ’–


and that's the whole page, bestie 🏁 sourced from ./include/linux, dated October 2026 β€” mwah, slay, periodt πŸ’…πŸŽ€πŸŒˆ

πŸ“¦ where this page comes from