__ipi_send_mask(9)
π
__ipi_send_mask β send an IPI to target Linux SMP CPU(s)
okay so bestie, we're in the Kernel API Manual today, and the star of the show is __ipi_send_mask from __ipi_send_mask(9). yes it has the double underscore, no you cannot skip it, she's built different π
β¨ SYNOPSIS β¨
int __ipi_send_mask (struct irq_desc *desc , const struct cpumask *dest
);
like literally that's the whole signature. one int, two args, zero drama π
π«Ά ARGUMENTS π«Ά
descβ pointer to theirq_descof the IRQ. that's her little info card, she needs it, don't lose it πdestβ the destination CPU(s), and this one comes with a vibe check: it must be a subset of the mask passed toirq_reserve_ipi. not a superset, not a "close enough", a subset. periodt π
πΈ DESCRIPTION πΈ
okay so here's the tea β this function exists for architecture or core code to speed up IPI sending. she's the fast lane, the express checkout, the "don't talk to me I'm busy" of IPI delivery β‘
and the big one, listen carefully:
NOT usable from driver code. like. at all. this is not for you, driver bestie, this is core-code-only, iykyk π
β RETURN β
0on success π (slay, everything worked)- a negative error number on failure π (it's giving "something went wrong", read the number and cope)
π¦ SEE ALSO π¦
the whole friend group lives in the kernel file ./kernel/irq/ipi.c, go say hi to:
irq_reserve_ipi(9)irq_destroy_ipi(9)ipi_get_hwirq(9)__ipi_send_single(9)ipi_send_single(9)ipi_send_mask(9)
and that's the page, bestie π this lil cutie lives in ./kernel/irq, dated October 2026, and she goes by __ipi_send_mask(9) β go forth and send those IPIs responsibly, mwah ππ
π¦ 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