Re: [PATCH][2.5] Protect smp_call_function_data w/ spinlocks on Alpha

From: Zwane Mwaikambo (zwane@holomorphy.com)
Date: Mon Feb 17 2003 - 09:31:38 EST


On Mon, 17 Feb 2003, Ivan Kokshaysky wrote:

> On Mon, Feb 17, 2003 at 03:32:09AM -0500, Zwane Mwaikambo wrote:
> > Assigns whatever the pointer happens to be at the time, be it NULL or the
> > next incoming message call.
>
> No, the pointer is guaranteed to be valid.
>
> > Therefore we'd need a lock to protect both the variable and critical
> > section.
>
> But smp_call_function_data pointer itself is exactly such a lock -
> other CPUs can't enter the section between 'if (pointer_lock())' and
> 'smp_call_function_data = 0', so there is no need for extra lock
> variable. Additionally, pointer_lock() with retry = 0 acts as spin_trylock.

Oh my mistake i thought you were talking about atomic assignment and not
blocking at that point. I misunderstood what you stated.

        Zwane

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



This archive was generated by hypermail 2b29 : Sun Feb 23 2003 - 22:00:18 EST