STRUCT MSC_WINDOW(9)
π struct msc_window(9) β¨
okay so this is a page from the Kernel API Manual, and bestie, it's about struct msc_window β the multiblock mode window descriptor. yes it sounds intense. no it's not scary. let's get into it π«Ά
πΈ NAME πΈ
struct msc_window β the multiblock mode window descriptor, literally the lil' record that says "this window starts here, has this many blocks, and belongs to this MSC device" π
β¨ SYNOPSIS β¨
struct msc_window {
struct list_head entry;
unsigned long pgoff;
enum lockout_state lockout;
spinlock_t lo_lock;
unsigned int nr_blocks;
unsigned int nr_segs;
struct msc *msc;
struct sg_table _sgt;
struct sg_table *sgt;
};
look at her. nine fields. main character energy fr fr π
π Members π
the way each one of these has a whole personality:
entryβ window list linkage, and it hooks intomsc::win_list. it's giving "i know a guy who knows a guy" πpgoffβ the page offset into the buffer where this window starts. where it all begins, periodt πlockoutβ the lockout state. see the comment below, iykyk πlo_lockβ the spinlock that serializes the lockout state. someone's gotta keep it together πnr_blocksβ how many blocks (pages) are in this window. the headcount π’nr_segsβ how many segments are in this window, and yes it's<= nr_blocks. important!! don't forget that part π«Άmscβ pointer to the MSC device. this window's home base π_sgtβ array of block descriptors π§sgtβ array of block descriptors. yes, again. they're twins, it's iconic β¨
π SEE ALSO π
so many friends, so many cross-references, we love a community π¦
Kernel file ./drivers/hwtracing/intel_th/msu.c, plus:
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_disable(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)
go read them. not me being a whole study guide rn π
and that's the whole page bestie, you ate that π
β¨ this came from ./drivers/hwtracing/intel_th, dated October 2026 β mwah, catch you on the next manpage ππ
π¦ 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