STRUCT TTM_LRU_WALK_ARG(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct ttm_lru_walk_arg(9) β€” like, the Kernel API Manual, bestie πŸŽ€

Okay so picture this: we're deep in the drm/ttm lore, and there's this little struct that's literally the shared glue holding all the BO LRU walk variants together. Common part energy ✨ β€” it's the friend group's group chat, the thing every variant shows up to. Obsessed.


✨ NAME ✨

struct ttm_lru_walk_arg β€” the common part for the variants of BO LRU walk. No cap, that's its whole job 🫢


🌸 SYNOPSIS 🌸

struct ttm_lru_walk_arg {
    struct ttm_operation_ctx *ctx;
    struct ww_acquire_ctx *ticket;
    bool trylock_only;
    bool sleeping_lock;
};

Look at her. Four fields, zero drama, main character energy πŸ‘‘


πŸ¦‹ Members πŸ¦‹

  • ctx β€” a pointer to the struct ttm_operation_ctx. Yeah, she points at the operation context, that's the vibe πŸ’–
  • ticket β€” the struct ww_acquire_ctx, if any. Key words: if any πŸ™ˆ sometimes she's just out here being NULL.
  • trylock_only β€” literally only use trylock for locking. That's it. That's the whole field. Trylock only, periodt. πŸ”₯
  • sleeping_lock β€” use sleeping locks even when the ticket is NULL πŸ’€
⚠️ Real talk bestie: trylock_only has precedence over sleeping_lock. So if both are set, trylock_only wins the argument. Not me picking favorites but like… it does 😭

🌈 SEE ALSO 🌈

Everything's connected, iykyk β€” go look at the kernel file ./include/drm/ttm/ttm_bo.h and then the whole squad:

Like, the entire friend group showed up to the function. Slay πŸ’…


And that's the page, bestie β€” brought to you from ./include/drm/ttm, dated October 2026, officially filed under struct ttm_lru_walk_arg(9) 🌸 Go forth and walk those LRUs responsibly βœ¨πŸ’œ

πŸ“¦ where this page comes from