[PATCH] microoptimize locking primitives by avoiding unnecessary atomic ops
John Baldwin
jhb at freebsd.org
Fri May 27 23:21:35 UTC 2016
On Friday, May 27, 2016 09:17:01 PM Mateusz Guzik wrote:
> Hello there,
>
> quite some time ago I posted a trivial patch to locking primitives. What
> they do is the inline part tries an atomic op and if that fails the
> actual function is called, which immediately tries the same op.
>
> The obvious optimisation checks for the availability of the lock first.
>
> There concerns about the way it was done previously by relying on
> volatile behaving in a specific way.
>
> Later a simplified version was posted which should not have the concern,
> but the thread died.
>
> I refer you to https://lists.freebsd.org/pipermail/freebsd-current/2015-November/058100.html
> for simple benchmark results.
>
> I would like to get the patch in before 11 freeze.
I think this looks fine. Thanks for expanding the previous patch to cover
more primitives.
--
John Baldwin
More information about the freebsd-current
mailing list