vidtv_psi_pa...ogram_assign(9)
π vidtv_psi_pat_program_assign β like, the whole kernel API manual vibe, but fun β¨
okay so bestie, we're in the Kernel API Manual today and this page is literally about vidtv_psi_pat_program_assign. yes the header is doing that truncated thing where it's all vidtv_psi_pa...ogram_assign(9) but don't panic, that's just the man page being dramatic. π
β¨ NAME β¨
vidtv_psi_pat_program_assign β the function that assigns the program loop to the PAT. that's it, that's the whole job. slay. π
πΈ SYNOPSIS πΈ
void vidtv_psi_pat_program_assign (struct vidtv_psi_table_pat *pat ,
struct vidtv_psi_table_pat_program *p );
it returns void btw, so like... no return value to obsess over. very low maintenance king. π
π¦ ARGUMENTS π¦
patβ the PAT you're assigning to. main character of this whole operation honestly.pβ the program loop, and yeah that's one or more programs in there. it's giving "bring the whole squad". π«Ά
β DESCRIPTION β
okay so here's the tea, and this part actually matters so listen up:
this will free the previous program loop in the table. so like, whatever loop was chilling in there before? gone. bye. π
then it hands ownership of the program loop over to the table β which means the table is now responsible for it, and when a call to its destroy function happens, the table will free this program loop. so it's not a copy situation, it's a "you own it now, bestie" situation. important!! π₯
ngl this is ownership-transfer energy, so don't go freeing p yourself afterwards unless you enjoy chaos. the table calls dibs. π
π§ SEE ALSO π§
like, the whole extended friend group of references, no cap, all of them:
Kernel file ./drivers/media/test-drivers/vidtv/vidtv_psi.h struct psi_write_args(9), struct desc_write_args(9), struct crc32_write_args(9), struct header_write_args(9), vidtv_psi_sdt_service_assign(9), vidtv_psi_desc_assign(9), vidtv_pmt_desc_assign(9), vidtv_sdt_desc_assign(9), vidtv_psi_pmt_stream_assign(9), vidtv_psi_pmt_create_sec_for_each_pat_entry(9), vidtv_psi_pmt_get_pid(9), vidtv_psi_pat_table_update_sec_len(9), vidtv_psi_pmt_table_update_sec_len(9), vidtv_psi_sdt_table_update_sec_len(9), struct vidtv_psi_pat_write_args(9), vidtv_psi_pat_write_into(9), struct vidtv_psi_sdt_write_args(9), vidtv_psi_sdt_write_into(9), struct vidtv_psi_pmt_write_args(9), vidtv_psi_pmt_write_into(9), vidtv_psi_find_pmt_sec(9), struct vidtv_psi_table_transport(9), struct vidtv_psi_table_nit(9), struct vidtv_psi_nit_write_args(9), vidtv_psi_nit_write_into(9), struct vidtv_psi_eit_write_args(9), vidtv_psi_eit_write_into(9), vidtv_psi_eit_table_update_sec_len(9), vidtv_psi_eit_event_assign(9)
like, read them, they're all right there, iykyk. π
aaaand that's the page!! before i go β the footer was giving ./drivers/media/test-drivers/v... with a date of October 2026, which like... future queen behavior honestly ππ. mwah, go free some program loops responsibly. ππ
π¦ 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