text_poke_set(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ text_poke_set(9) ✨

okay bestie, welcome to the Kernel API Manual πŸ’… this one's called text_poke_set and honestly it's giving "small function, big chaos energy" πŸŽ€


πŸ’– NAME πŸ’–

text_poke_set β€” memset into (an unused part of) RX memory 🫢

like, it's memset but make it spicy ✨


🌸 SYNOPSIS 🌸

void * text_poke_set (void *addr , int c , size_t len );

yes the spacing is like that, no i will not be fixing it, it's iconic πŸ’œ


πŸ¦‹ ARGUMENTS πŸ¦‹

  • addr β€” the address to modify πŸ‘ˆ this is where the magic goes
  • c β€” the byte you're filling the area with 🌈 literally just one lil byte
  • len β€” length to copy, and bestie listen, this could be more than 2x PAGE_SIZE 😭 that's not a typo, that's canon

πŸ’€ DESCRIPTION πŸ’€

so what's the vibe? this function is useful to overwrite unused regions of RX memory with illegal instructions πŸ”₯

and no, "illegal" is not me being dramatic for once β€” that is literally what the manpage says. we're planting bad-girl instructions in the dead zones. it's giving trap street, it's giving main character sabotage, it's exactly what it sounds like ✨

ngl the caveat matters here: we're talking about unused regions of RX memory. that word is doing a lot of work. do not come crying to me if you fill a region that was, in fact, used πŸ™ˆ

πŸŽ€ SEE ALSO πŸŽ€

the whole friend group 🫢 β€” kernel file ./arch/x86/kernel/alternative.c, plus:

periodt πŸ’… go read all of them, i'll wait πŸ“


and that's the whole page, bestie 🧚 no notes, ate and left no crumbs πŸ‘‘

sign-off time: this cutie lives under ./arch/x86/kernel, dated October 2026, and the page itself goes by text_poke_set(9) β€” that's the source, the version, and the date, all wrapped up with a little bow πŸŽ€ mwah πŸ’–
πŸ“¦ where this page comes from