[PATCH] fix gettimeofday vs. update_gtod race
Benjamin Herrenschmidt
benh at kernel.crashing.org
Thu Aug 17 10:27:57 EST 2006
On Wed, 2006-08-16 at 19:18 -0500, Nathan Lynch wrote:
> No? I didn't find anything about mftb having synchronizing
> behavior. How should we ensure that temp_varp is assigned before
> reading the timebase?
I sync an isync would be enough.
> Surely at least a compiler barrier is needed?
Yeah.
> > and the race not completely closed imho...
>
> How so? I could've missed something, but I've hammered the patch
> pretty hard, fwiw.
Nah you are right, but you may be using a too big hammer
> > I need to think about it a bit more closely but what about instead
> > just check if tb_ticks goes negative, and if yes, just do get_tb()
> > again ? That might be faster than having a sync in there and should
> > still be correct.
>
> I did try something like that but found that a loop (i.e. multiple
> get_tb's to "catch up") was necessary.
Hrm... even with an isync ?
Ben.
More information about the Linuxppc-dev
mailing list