[PATCH v2] sched: Use BUG_ON
Jeremy Kerr
jk at ozlabs.org
Fri Jul 2 11:19:27 AEST 2021
Hi Jason,
> The BUG_ON macro simplifies the if condition followed by BUG, so that
> we can use BUG_ON instead of if condition followed by BUG.
[...]
> - if (spu_acquire(ctx))
> - BUG(); /* a kernel thread never has signals pending */
> + /* a kernel thread never has signals pending */
> + BUG_ON(spu_acquire(ctx));
I'm not convinced that this is an improvement; you've combined the
acquire and the BUG into a single statement, and now it's no longer
clear what the comment applies to.
If you really wanted to use BUG_ON, something like this would be more
clear:
rc = spu_acquire(ctx);
/* a kernel thread never has signals pending */
BUG_ON(rc);
but we don't have a suitable rc variable handy, so we'd need one of
those declared too. You could avoid that with:
if (spu_acquire(ctx))
BUG_ON(1); /* a kernel thread never has signals pending */
but wait: no need for the constant there, so this would be better:
if (spu_acquire(ctx))
BUG(); /* a kernel thread never has signals pending */
wait, what are we doing again?
To me, this is a bit of shuffling code around, for no real benefit.
Regards,
Jeremy
More information about the Linuxppc-dev
mailing list