msc_disable(9)
π msc_disable(9) β Kernel API Manual, bestie edition π
Okay so picture this: you're deep in the kernel, you're in the Kernel API Manual, and you need to shut some MSC hardware all the way down. That's the whole vibe of this page. Let's get into it β¨
β¨ NAME β¨
msc_disable β disable MSC hardware. That's it, that's the tweet. π¦
β¨ SYNOPSIS β¨
void msc_disable (struct msc *msc );
No return value, it just does the thing. Iconic behaviour honestly. π
β¨ ARGUMENTS β¨
mscβ the MSC device you wanna disable. Your main character struct, basically. π
β¨ DESCRIPTION β¨
So here's the deal fr fr: if msc is enabled, this function first disables tracing on the switch, and then it disables MSC storage. Two steps, in that exact order, no skipping. π«Ά
π¨ Important caveat, do NOT sleep on this: the caller must hold msc::buf_mutex. That's on you, not on the function. No cap, if you don't hold it you're asking for trouble π
π SEE ALSO π
The whole friend group, assembled π:
- Kernel file
./drivers/hwtracing/intel_th/msu.c struct msc_window(9)struct msc_iter(9)struct msc(9)struct msu_buffer_entry(9)msc_is_last_win(9)msc_next_window(9)msc_find_window(9)msc_oldest_window(9)msc_win_oldest_sg(9)msc_buffer_iterate(9)msc_buffer_clear_hw_header(9)msc_configure(9)msc_buffer_contig_alloc(9)msc_buffer_contig_free(9)msc_buffer_contig_get_page(9)msc_buffer_win_alloc(9)msc_buffer_win_free(9)msc_buffer_relink(9)msc_buffer_free(9)msc_buffer_alloc(9)msc_buffer_unlocked_free_unless_used(9)msc_buffer_free_unless_used(9)msc_buffer_get_page(9)struct msc_win_to_user_struct(9)msc_win_to_user(9)intel_th_msc_window_unlock(9)
Anyway bestie, that's the whole page π§ This little gem lives over in ./drivers/hwtracing/intel_th, and it's dated October 2026 β so yeah, it's giving future-forward, it's giving timeless kernel lore. Go hold that mutex and slay π
ππΈ
π¦ 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