DAMON is a nifty data access monitoring solution for the Linux kernel developed by Amazon and other parties for system monitoring and performance/efficiency optimizations and more. But it’s not so ground-breaking that it’s worth enabling by default in all Linux kernel builds, Linus Torvalds has decided.
Back during the Linux 6.16 merge window a patch was merged to enable DAMON by default. CONFIG_DAMON was defaulting to enabled by default for all new kernel builds on the basis of:
“As of this writing, multiple major distros including Alma, Amazon, Android, CentOS, Debian, Fedora, and Oracle are build-enabling DAMON (set CONFIG_DAMON). Enabling it by default will save configuration setup time for the current and future DAMON users.
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. Only one potential risk is making the size of the kernel a little bit larger. On a production-purpose configuration, it increases the resulting kernel package size by about 0.1 % of the final package file. I believe that’s too small to be a real problem in common setups.
Hence, the benefit of enabling CONFIG_DAMON outweighs the potential risk. Set CONFIG_DAMON by default.”
This change slipped under Linus Torvalds’ radar at first but has since been brought to his attention. Linus Torvalds yesterday went ahead and reverted the change:
“This reverts commit 28615e6eed152f2fda5486680090b74aeed7b554.
No, we don’t make random features default to being on.”
This stands inline with other feature enablement weighed by Torvalds in the past that enabling new features by default requires very good reason in doing so. Otherwise the Linux kernel does not, e.g. “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.”
Thus DAMON is now disabled by default in the latest Linux Git code and ahead of Linux 6.16-rc2 this weekend.