Skip to Content

Linus Torvalds Says No to Enabling DAMON by Default — Here’s Why That Matters

Earlier this month, a subtle but significant change was quietly reverted in the Linux kernel’s development branch: a patch that had enabled DAMON, a memory access monitoring tool, by default.

At first glance, it seemed like a reasonable enhancement. But then Linus Torvalds stepped in and shut it down with a firm “no.”

So, what happened? And why did the usually calm and surgical Linux founder roll back the change so quickly?

Let’s unpack the story — and why it matters more than it seems.

Get Your Free Linux training!

Join our free Linux training and discover the power of open-source technology. Enhance your skills and boost your career! Start Learning Linux today - Free!

What Is DAMON, and Why Was It Enabled?

DAMON stands for Data Access MONitor. It’s a subsystem designed to monitor memory access patterns inside the Linux kernel — helping developers and system administrators optimize memory usage, detect performance bottlenecks, and perform advanced system monitoring.

Originally developed by Amazon engineers and refined by the broader community, DAMON has already gained traction.

Distros like Amazon Linux, Android, AlmaLinux, Fedora, Debian, CentOS, and Oracle Linux have started building their kernels with CONFIG_DAMON=y — which includes DAMON support by default, even though the feature remains inactive unless manually used.

The case for enabling it globally was simple:

“Build-enabling DAMON does not introduce a real risk since it makes no behavioral change by default. It requires explicit user requests to do anything. It increases the resulting kernel package size by about 0.1%. That’s too small to be a real problem.”

In short: “We’re already using it. It’s safe. Let’s save everyone time and make it default.”


But Then Linus Found Out

That reasoning seemed to hold up — until Linus Torvalds noticed.

After the change initially slipped through during the Linux 6.16 merge window, Torvalds caught it and immediately reversed the patch. His explanation was blunt:

“This reverts commit 28615e6eed152f2fda5486680090b74aeed7b554.

No, we don’t make random features default to being on.”

He went on to explain a broader principle that’s guided kernel development for decades:

“We do not enable new random drivers by default. And we most definitely don’t do it when they are odd-ball ones that most people have never heard of.”

In other words: just because something is safe doesn’t mean it belongs in everyone’s kernel by default. Especially when it caters to a niche use case.


The Bigger Picture: Why Defaults Matter in Linux

This decision isn’t just about DAMON. It’s about how the Linux kernel grows — and how it avoids bloat.

Over time, many features have been proposed for default inclusion. But Linus and other maintainers maintain a high bar: if a feature doesn’t benefit the majority of users or doesn’t meet a critical need, it stays opt-in.

This cautious approach helps prevent kernel bloat, protects system performance, and ensures that only the most essential and broadly useful features get included by default.

DAMON is powerful, no doubt — especially for performance engineers and sysadmins working on high-scale systems. But for the average user or even typical enterprise use? It’s still an edge tool.


So, What Happens Now?

As of this writing, the default CONFIG_DAMON enablement has been reverted in the mainline Linux Git tree. That means in Linux 6.16-rc2 and beyond, the kernel will no longer include DAMON by default.

Distributions can still choose to enable it on their own — and many already do — but it’s no longer part of the upstream default.

If you need DAMON, you’ll still be able to configure and enable it yourself. But the broader Linux user base? They’ll never know it was even there.