Kernel panic. Screen freezes. RISC-V XIP dreams shatter like cheap glass under a hammer.
And just like that, after months — no, years — of playing whack-a-mole with bugs, the Linux kernel’s RISC-V XIP feature is getting the boot. Nam Cao, the dev who’s been babysitting this code out of sheer boredom, finally said enough. His patch? Straight to the RISC-V ‘for-next’ branch, primed for Linux 7.1.
XIP — execute-in-place, for the uninitiated — lets code run straight from flash memory, skipping the RAM hop. Picture it: a memory-starved embedded board, sipping power like a miser with a thimble of whiskey, yet still crunching instructions without bloating DRAM. In theory, pure gold for the tiny, battery-guzzling world of IoT gadgets and microcontrollers. RISC-V, that plucky open ISA gunning to dethrone ARM and x86, should’ve eaten this up.
But nope.
“XIP has a history of being broken for long periods of time. In 2023, it was broken for 18 months before getting fixed. In 2024 it was 4 months. And now it is broken again since commit a44fb5722199 ("riscv: Add runtime constant support"), 10 months ago. These are clear signs that XIP feature is not being used. I occasionally looked after XIP, but mostly because I was bored and had nothing better to do. Remove XIP support. Revert is possible if someone shows up complaining.”
Nam Cao doesn’t mince words. That’s the raw patch message, a mic drop from the trenches.
Here’s the thing — RISC-V’s exploding. Boards everywhere, from SiFive to Alibaba’s T-Head, shipping in cars, drones, even satellites. It’s the anti-proprietary rebel yell in a world of locked-down chips. Yet XIP? Crickets. No one’s testing it, no one’s screaming when it breaks. It’s like building a Ferrari with a bicycle chain for the derailleur — fancy, but it snaps on the first hill.
Why Does RISC-V XIP Keep Breaking?
Blame the ghosts of commits past. Last year, they patched it up after ages in limbo. Fixed! Until… nope, shattered again by a runtime constant tweak ten months back. Cao’s been the lone ranger, poking at it during downtime. No users, no tests, just a feature rotting in the mainline like forgotten takeout.
Think Darwin in the kernel garden. Unused code? Pruned. It’s brutal, beautiful evolution — Linux’s secret sauce. Remember when firewire support nearly vanished? Or those ancient filesystems gathering dust? XIP joins the hall of “maybe later.”
But zoom out. RISC-V’s not just some hobbyist toy. It’s a platform shift, baby — open, extensible, ready to power AI edges and quantum sidekicks. XIP’s demise? Not a death knell. It’s triage. Focus fire on what works: vector extensions humming, MMU magic solidifying.
Surprising, though, right? RAM’s pricey, flash is king in lean times. Why no love? Maybe devs chase fatter boards with gigs of DDR. Or XIP’s finicky — flash wear, cache coherency dances that trip up RISC-V’s still-maturing pipeline.
Is Removing RISC-V XIP a Blow to the Future?
Nah. If anything, it’s a flex.
RISC-V’s youth mirrors the early web — remember Netscape’s marquee tag? Blink? Cute experiments, axed for sanity. Kernels do the same. This ruthless cull keeps mainline lean, merge windows sane. Prediction: someone will holler when 7.1 drops. A vendor with secret XIP fleets. Boom — revert patch flies in.
Or not. That’s the thrill. Open source isn’t a museum; it’s a battlefield. RISC-V wins by shipping stable code, not propping zombies.
Cao’s boredom quip? Gold. It screams volunteer spirit — folks fixing what they love, or tolerate. In AI’s gold rush, where closed models hoard secrets, RISC-V’s transparency shines. XIP’s out, but the ISA’s just warming up. Imagine neural nets inferring on RISC-V clusters, no licensing fees, pure velocity.
Critique time: RISC-V Foundation’s PR machine hypes vectors and custom extensions nonstop. Fair. But this? Quiet kill. No blog post elegy. Smart — don’t draw eyes to weak spots. Yet it stings for purists dreaming flash-only utopia.
What if XIP rebounds? Fork it, test it, upstream it. Community’s the hammer. Or let it fade — RAM prices plummet anyway.
RISC-V’s trajectory? Skyrocketing. SiFive’s P870 cores crushing ARM in perf-per-watt. China’s ecosystem churning boards like candy. Linux 6.x already bends for it. XIP’s a speed bump, not a cliff.
Will RISC-V Ever Get XIP Back?
Short answer: if users materialize.
Long game — watch the merge window. Linux 7.1 looms, patch queued. No regressions flagged yet. If your board relied on it (spoiler: probably not), patch your tree or cry to LKML.
Analogy blast: XIP’s like vinyl in the streaming age. Warm, direct — but who polishes the needle? Spotify wins. RISC-V picks battles.
Enthusiasm check: this fuels my futurist fire. Open ISAs rewrite hardware rules. Bugs? Growing pains. Watch RISC-V devour embedded, edge AI, HPC. XIP’s footnote; the saga’s epic.
Developers, fork if you dare. Users, speak now. Kernel moves fast — catch up.
🧬 Related Insights
- Read more: Rust Sneaks into Scrapy: rs-trafilatura’s Pipeline That Scrapers Actually Need
- Read more: AgentEnsemble v2 Flips the Script: Tasks First, Agents as an Afterthought
Frequently Asked Questions
What is RISC-V XIP in Linux?
RISC-V XIP (execute-in-place) runs code directly from flash memory, saving precious RAM on tiny devices — but it’s been too buggy to stick around.
Why is RISC-V XIP support being removed from Linux?
It kept breaking for months at a time with no one testing or using it, so dev Nam Cao pulled the plug to clean up the kernel.
Can RISC-V XIP Linux feature come back?
Sure, if someone complains and tests it properly — open source reversions happen all the time.