DEFINE_INTER..._HANDLER_RAW(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… DEFINE_INTERRUPT_HANDLER_RAW(9) πŸ’…

okay bestie, welcome to the Kernel API Manual β€” this one lives in section 9 and it's literally all about DEFINE_INTERRUPT_HANDLER_RAW. yes the header got truncated to DEFINE_INTER..._HANDLER_RAW(9) because apparently even manpage titles have a character limit, but we know what it really is 🫢


✨ NAME ✨

DEFINE_INTERRUPT_HANDLER_RAW β€” Define raw interrupt handler function. that's it, that's the whole name section, she's concise πŸ’…


🌸 SYNOPSIS 🌸

DEFINE_INTERRUPT_HANDLER_RAW (func );

literally just the macro and one argument, no cap ✨


πŸŽ€ ARGUMENTS πŸŽ€

  • func β€” the function name of the entry point, aka what you're gonna call this handler. pick something cute but like, descriptive. iykyk πŸ’–

πŸ¦‹ RETURN πŸ¦‹

Returns a value back to asm caller. yep, it hands a value right back to the assembly caller β€” the asm is the one asking, so it's the one receiving πŸ™ˆ


πŸ”₯ DESCRIPTION πŸ”₯

so here's the tea πŸ“ β€” func is called from ASM entry code. like, straight from the assembly, no middleman, no vibes check.

This is a plain function which does no tracing, reconciling, etc. she's raw, she's unfiltered, she's giving minimalist main character energy. The macro is written so it acts as a function definition β€” so you append the body with a pair of curly brackets. { } bestie. that's the assignment πŸ’€

🚨 the rules, and we're serious about these: raw interrupt handlers must not enable or disable interrupts, or schedule. if you do, tracing and instrumentation (ftrace, lockdep, etc) would not be advisable either β€” although it may be possible in a pinch, the trace will look odd at least. so like… don't. lowkey the trace will be cursed 🌈

A raw handler may call one of the other interrupt handler functions to be converted into that interrupt context without these restrictions. so if you want the fancy features, that's the glow-up path πŸ‘‘

On PPC64, _RAW handlers may return with fast_interrupt_return. iconic platform-specific behavior, we love to see it ⭐

Specific handlers may have additional restrictions. always check, babes β€” no assuming 🧚


πŸ‘‘ SEE ALSO πŸ‘‘

that's the whole friend group, go say hi to all of them 🫢


and that's the page!! source is ./arch/powerpc/include/asm, dated October 2026, served fresh from the Kernel API Manual. mwah, go write some raw interrupt handlers responsibly πŸ’–βœ¨πŸŽ€

πŸ“¦ where this page comes from