Subject: Re: Strange Badness with RT Spin Lock

From: Darcy Watkins <[email-masked]>
Date: Wed, 13 Aug 2008 12:55:22 -0700

I have an update...

First please disregard the follow-up email I sent mentioning memory
barriers.  That blew up shortly after I sent out the email.

The problem appears to be resolved when I declare the spinlock variable
using the __cacheline_aligned attribute (that is without the _in_smp
suffix).

Does anyone know of an explanation as to why a spinlock may need to be
cacheline aligned in a uniprocessor system?

Regards,

Darcy

On Fri, 2008-08-08 at 12:56 -0700, Darcy Watkins wrote:
> Hello,
> 
> I have a very unusual bug I have been trying to get to the bottom of.
> 
> First the background...
> 
>    AMCC PPC405EP on embedded network device (simpler than a Taihu)
>    Kernel 2.6.25.8-rt7 with incremental patches up to 2.6.25.13
>    mPCI slot with a WiMax radio card
> 
> This is an RT-Preemption kernel.
> 
> In my system, in a real time radio (WiMax) driver, I have code that
> makes use of a spinlock to control access to a tree structure...
> 
> spinlock_t tree_lock;
> 

-- 

Regards,

Darcy

--------------
Darcy L. Watkins - Senior Software Developer
Tranzeo Wireless Technologies, Inc.
19273 Fraser Way, Pitt Meadows, BC, Canada V3Y 2V4
T:604-460-6002 ext:410
http://www.tranzeo.com