Date: Tue, 16 Jan 2001 23:56:53 +1100 (EST) From: Bruce Evans <bde@zeta.org.au> To: John Baldwin <jhb@FreeBSD.ORG> Cc: Peter Jeremy <peter.jeremy@alcatel.com.au>, current@FreeBSD.ORG, Mark Murray <mark@grondar.za> Subject: Re: Atomic breakage? Message-ID: <Pine.BSF.4.21.0101162335080.2035-100000@besplex.bde.org> In-Reply-To: <XFMail.010115114721.jhb@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, 15 Jan 2001, John Baldwin wrote: > On 14-Jan-01 Peter Jeremy wrote: > > And for BDE's benefit - atomic.h is broken for IA32's with 64-bit > > longs. (I believe that can be fixed for Pentiums and above using > > CMPXCHG8B, but I can't test the code). > > The i386 with 64-bit longs doesn't boot from what I hear. Also, long in > machine/types.h is 32-bits long. I don't think we need to bother with 64-bit > longs. Adding 64-bit atomic ops will be expensive on <= 486. It has booted fine for several years. I last built it on 8 Oct 2000. I haven't committed all the bits so it probably doesn't even build in -current. Erm, long isn't in machine/types.h. In <machine>, only the long limits in <machine/limits.h> and a few bogus typedefs depend on the size of a long. I bother with 64-bit longs whether I need to or not :-). They get used on i386's mainly in old code and interfaces that don't use typedefs. Hopefully 64-bit scalars will never need to be accessed atomically. Bruce To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.4.21.0101162335080.2035-100000>