Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 14 Apr 2006 16:14:57 -0400
From:      John Baldwin <jhb@freebsd.org>
To:        src-committers@freebsd.org
Cc:        cvs-src@freebsd.org, cvs-all@freebsd.org
Subject:   Re: cvs commit: src/sys/kern kern_mutex.c
Message-ID:  <200604141615.00246.jhb@freebsd.org>
In-Reply-To: <200604141951.k3EJpomX069769@repoman.freebsd.org>
References:  <200604141951.k3EJpomX069769@repoman.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Friday 14 April 2006 15:51, John Baldwin wrote:
> jhb         2006-04-14 19:51:50 UTC
> 
>   FreeBSD src repository
> 
>   Modified files:
>     sys/kern             kern_mutex.c 
>   Log:
>   Mark the thread pointer used during an adaptive spin volatile so that the
>   compiler doesn't decide to cache td_state.  Cachine the state would cause
>   the spinning thread to not notice when the owning thread stopped executing
>   (if it was preempted for example) which could result in livelock.

FYI, I've only seen this happen in a local branch, I haven't seen this
happen with any CVS kernels.

-- 
John Baldwin <jhb@FreeBSD.org>  <><  http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve"  =  http://www.FreeBSD.org



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200604141615.00246.jhb>