On Nov 19, 7:08pm, gle...@eyesbeyond.com (Greg Lewis) wrote: -- Subject: Re: Extra Zero/Shark patches for review
| G'day Christos, | | On Thu, Nov 19, 2009 at 06:44:02PM -0500, Christos Zoulas wrote: | > FYI, I've gotten rid of all the ${MACHINE} conditionals in my | > version of the code and this is what I am using now: | > | > http://www.zoulas.com/junk/atomic_bsd_zero.inline.hpp | | I get a 404 from that URL unfortunately :(. Sorry fixed. | > So it turns out that NetBSD's atomic implementation (which is ~= | > to Solaris) has all the necessary functions to implement the calls | > directly without any glue. I just wrote macros/inlines for the | > FreeBSD to supplement the functions where they were missing. | > | > I don't think that the substitute functions (which I just copied | > from the bodies of the original file) are safe, since they do | > unlocked multiple accesses to the memory locations involved, so it | > would be better to implement directly the atomic primitives. But | > then again I did not look at them very hard. | | Thanks for working on this, that sounds great :). | | > MI: | > http://cvsweb.netbsd.org/bsdweb.cgi/src/common/lib/libc/atomic/ | > MD[arm]: | > http://cvsweb.netbsd.org/bsdweb.cgi/src/common/lib/libc/arch/arm/atomic/ | > | > Of course something needs to be done with 64 bit atomics on the 32 | > bit implementations that don't support them, but... | | Even without that this should expand the platform support considerably. There are a few other minor issues that I have fixed and now the build is progressing very smoothly. Thanks for all your work in this! christos