On Wed, Jan 18, 2023 at 12:04:41PM -0600, Justin Forbes wrote:
For a *very* long time, Rawhide has built rcX kernels as
kernels and daily git snapshots as debug kernels only. This has
brought attention to some issues that might otherwise be missed.
Specifically around things like lockdep. Unfortunately, even without
changing our selected debug options, performance has gotten
considerably worse for these debug kernels due to upstream code
changes. At the same time, we do have some additional automated
testing happening now that was not happening before, which we can
explicitly point at debug kernels. I am wondering if it is time to
switch rawhide to work the way that everything else does, building
both debug and nodebug builds every day, instead of forcing debug
builds 80% of the time. It would mean a reduction in coverage, but I
am not sure by how much, as I get the impression that most rawhide
users are sticking to the nodebug kernels anyway. It would also
allow us to turn on some more debug features for our debug kernels
that are a bit more performance limiting, but extremely useful. We
have left them off in Fedora specifically because they were too heavy
weight for expecting users to run them.
So, what does the community think? Should we continue as is, or should
we move to a more typical model where both debug and non-debug kernels
are build with every build?
If Rawhide is to maximise its usefulness as a distro you can actually
run tests on, then its functional behaviour and operation needs to be
on a par with the final released distro will have. With the debug
kernels provided by default for most of the rawhide cycle, this goal
is not achievable today.
Having debug kernels available for testing is a good idea, and we
could encourage users to try them. I think it is undesirable to force
the debug builds onto every install by default though, because their
operational behaviour (mostly in terms of performance) is not a match
for what will actually be shipped.