On Mon, May 13, 2013 at 7:50 AM, Heikki Linnakangas
<hlinnakangas(at)vmware(dot)com> wrote:
> The attached patch is still work-in-progress. There needs to be a configure
> test and fallback to spinlock if a CAS instruction is not available. I used
> the gcc __sync_val_compare_and_swap() builtin directly, that needs to be
> abstracted. Also, in the case that the wait queue needs to be manipulated,
> the code spins on the CAS instruction, but there is no delay mechanism like
> there is on a regular spinlock; that needs to be added in somehow.
These are really interesting results. Why is the CAS method so much
faster then TAS? Did you see any contention?
merlin