Re: [gcv v3 27/35] arm: Replace __get_cpu_var uses

From: Will Deacon
Date: Thu Sep 05 2013 - 09:04:31 EST


Hi again Christoph,

On Wed, Sep 04, 2013 at 09:58:31PM +0100, Christoph Lameter wrote:
> Here is a patch to be applied after the earlier one to convert the local_t
> use to this_cpu. Not sure if I got the local_dec_and_test conversion
> right.

[...]

> @@ -118,11 +117,11 @@ void disable_debug_monitors(enum debug_e
>
> WARN_ON(preemptible());
>
> - if (local_dec_and_test(this_cpu_ptr(&mde_ref_count)))
> + if (this_cpu_dec_return(mde_ref_count))
> disable = ~DBG_MDSCR_MDE;
>
> if (el == DBG_ACTIVE_EL1 &&
> - local_dec_and_test(this_cpu_ptr(&kde_ref_count)))
> + this_cpu_dec_return(kde_ref_count))
> disable &= ~DBG_MDSCR_KDE;

Almost! I think we just need an '== 0' check on the result from the
decrement, since local_dec_and_test is simply a way to check that we've
decremented to zero, so this patch would otherwise invert the meaning.

Will
--
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/