This is the mail archive of the
libc-alpha@sources.redhat.com
mailing list for the glibc project.
Re: is it a bug of /glibc/sysdeps/arm/atomicity.h ?
> > let us consider the following scenario. Suppose there are three thread
> > pathes.
> > Init: *p = 0
> > T1 compare_and_swap(p, 0, 1) ;
> > T2 compare_and_swap(p,0,1);
> > T3 compare_and_swap(p,1,2);
>
> Yes, that function is not actually atomic. If you search the mailing
> list archives for gcc@gcc.gnu.org you'll find several possible fixes;
> no one's done any of them.
Can you get away with a light-weight syscall?
c.