From owner-freebsd-current Tue Jan 16 4:57:12 2001 Delivered-To: freebsd-current@freebsd.org Received: from mailman.zeta.org.au (mailman.zeta.org.au [203.26.10.16]) by hub.freebsd.org (Postfix) with ESMTP id E5A0F37B698; Tue, 16 Jan 2001 04:56:52 -0800 (PST) Received: from bde.zeta.org.au (bde.zeta.org.au [203.2.228.102]) by mailman.zeta.org.au (8.9.3/8.8.7) with ESMTP id XAA04488; Tue, 16 Jan 2001 23:56:49 +1100 Date: Tue, 16 Jan 2001 23:56:53 +1100 (EST) From: Bruce Evans X-Sender: bde@besplex.bde.org To: John Baldwin Cc: Peter Jeremy , current@FreeBSD.ORG, Mark Murray Subject: Re: Atomic breakage? In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG 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 , only the long limits in 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