irq_gc_mask_set_bit(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… irq_gc_mask_set_bit β€” a Kernel API Manual moment ✨

Okay bestie, welcome to the Kernel API Manual page for irq_gc_mask_set_bit(9) β€” like a <9> section page, yes the fun kind of nine. Sit down, grab a boba, we're masking interrupt chips today and it's lowkey iconic 🧚


🌸 NAME 🌸

irq_gc_mask_set_bit β€” mask a chip by setting a bit in the mask register. That's it. That's the whole vibe check πŸ’…


✨ SYNOPSIS ✨

void irq_gc_mask_set_bit (struct irq_data *d );

Look at that signature. Returning nothing (void, she's humble, she's giving main character energy but doesn't need to prove it), taking exactly one thing: struct irq_data *d. Periodt πŸŽ€


🫢 ARGUMENTS 🫢

  • d β€” bestie, it's irq_data. Yes that's the description. The literal, entire description. It's irq_data, the thing, the struct, that one. No more notes were given and we respect that πŸ™ˆ

πŸ¦‹ DESCRIPTION πŸ¦‹

Okay so picture this: the chip has a single mask register. One. Uno. Not a whole pile of them, just the one register doing its one job πŸ”₯

And here's the part where you go "oh that's why": the values of this register are cached</cached> β€” wait no, cached β€” and they're protected by gc->lock. So when you call this and it goes and sets a bit in that mask register, the cached copy is staying in sync and the lock is holding the door so nobody's out here stomping on it at the same time. Respect the lock, love the lock, don't fight the lock πŸ”’πŸ’–


πŸ‘‘ SEE ALSO πŸ‘‘

This is the part where the page is like "and here's everyone she rolls with" β€” genuinely a whole friend group, no cap. All of these live in the kernel file ./kernel/irq/generic-chip.c πŸ“:

Seventeen of them. Counted them. Go read them. They're all slaying in their own lane ⭐

Lowkey a note-to-self: notice irq_gc_mask_set_bit sets a bit to mask, and irq_gc_mask_clr_bit clears a bit to mask β€” bestie they are NOT the same function, do not swap them, I'm begging πŸ™

Alright, that's the page! This whole thing came from the ./kernel/irq source, dated October 2026, and you can cite it as irq_gc_mask_set_bit(9) forever and ever. Byeee, go mask those chips, you've got this πŸŒˆπŸ’œ

πŸ“¦ where this page comes from