On Mon, Mar 27, 2017 at 09:40:46AM +0200, Nicholas Mc Guire wrote: > Found by coccinelle: bugon.cocci > ./kernel/sched/core.c:5913:2-5: WARNING: Use BUG_ON instead of if condition > followed by BUG.
Right, so I disagree with that here. > @@ -5909,8 +5909,8 @@ void __init sched_init_smp(void) > mutex_unlock(&sched_domains_mutex); > > /* Move init over to a non-isolated CPU */ > - if (set_cpus_allowed_ptr(current, non_isolated_cpus) < 0) > - BUG(); > + BUG_ON(set_cpus_allowed_ptr(current, non_isolated_cpus) < 0); > + > sched_init_granularity(); > free_cpumask_var(non_isolated_cpus); If the condition were without side effects, that pattern would hold, but here the function call set_cpus_allowed_ptr() is very much not a pure function, so wrapping it in a BUG_ON() just fels wrong.

