I modified the code in s_lock.c to remove the spins

#define SPINS_PER_DELAY         1

and it doesn't exhibit the behaviour

This effectively changes the code to 


while(TAS(lock))
        select(10000); // 10ms

Can anyone explain why executing TAS 100 times would increase context
switches ?

Dave


On Tue, 2004-04-20 at 12:59, Josh Berkus wrote:
> Anjan,
> 
> > Quad 2.0GHz XEON with highest load we have seen on the applications, DB
> > performing great -
> 
> Can you run Tom's test?   It takes a particular pattern of data access to 
> reproduce the issue.
-- 
Dave Cramer
519 939 0336
ICQ # 14675561


---------------------------(end of broadcast)---------------------------
TIP 8: explain analyze is your friend

Reply via email to