Re: [PATCH] percpu: explain quick paths in pcpu_[de]populate_chunk()

From: Tejun Heo
Date: Tue Dec 01 2009 - 00:00:35 EST


Hello,

On 12/01/2009 11:02 AM, Cong Wang wrote:
> Nope, comments can never fix bad code.
>
> Since these two break statements are intentional, why not use if?
> Logically, the following two are equalent.
>
> for(a1; a2; a3){
> if (a4)
> return;
> break;
> }
>
>
> a1;
> if (a2) {
> if (a4)
> return;
> }
>
> And the latter is much more readable than the former.

I thought about that but didn't want to open code the special and
fairly complex loop construct used there. To me, it seemed using the
same loop construct would be much less error-prone than open coding
the loop mostly because those two special cases are the only place
where that is necessary. Maybe we can add pcpu_first_[un]pop_region()
macros and use them there but is the first iteration check that bad
even with sufficient explanations?

Thanks.

--
tejun
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/