Re: [PATCH v3 03/14] sched/core: uclamp: add CPU's clamp groups accounting
From: Patrick Bellasi
Date: Thu Aug 16 2018 - 09:33:00 EST
Hi Dietmar!
On 15-Aug 12:59, Dietmar Eggemann wrote:
> On 08/15/2018 12:54 PM, Patrick Bellasi wrote:
> >On 15-Aug 11:37, Dietmar Eggemann wrote:
> >>On 08/14/2018 06:49 PM, Patrick Bellasi wrote:
[...]
> >>If this is only for testing/debugging, I would suggest a simple one line
> >>BUG_ON()
> >
> >These are (eventually) considered as recoverable errors... thus,
> >AFAIK, using BUG_ON is overkilling and discouraged:
> > https://elixir.bootlin.com/linux/latest/source/include/asm-generic/bug.h#L42
>
> Not sure about that. If this refcounting is out of sync, that's indicating a
> serious issue here for me which should be fixed.
Well, refconting seems quite ok to me, we always inc/dec under RQ
locking and it's a per-CPU variable.
The warning is there to report issues on further testing as well as to
be safe with respect to possible future modifications of the code.
> >>You find CONFIG_SCHED_DEBUG=y in production kernels as well.
> >
> >AFAIK, that setting is discouraged for production kernels...
> >Moreover, it's still better to WARN sometimes on a production kernel
> >the crash the device, isnt't it?
>
> IMHO, if this is something which should not happen at all, a BUG_ON() is the
> right thing to do here.
I don't agree on that. I agree it should not happen but since it's a
recoverable error it think we should not panic.
There are really few BUG_ON() in core.c and they are all for much more
serious issues than a (eventually) broken refcount.
IMHO instead an (unlikely) inconsistent refcont for an "optional
optimization" on "frequency selection" is not such a critical
failure worth a device crash.
> And you get the call stack to investigate why it hit.
We can always add a stack dump if we notice the warning.
But, since we do not agree on that point, I would say we should better
wait for what the maintainers prefers.
Best,
Patrick
--
#include <best/regards.h>
Patrick Bellasi