From owner-cvs-src@FreeBSD.ORG Wed Sep 22 20:22:11 2004 Return-Path: Delivered-To: cvs-src@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2F9AB16A4CE; Wed, 22 Sep 2004 20:22:11 +0000 (GMT) Received: from cs.rice.edu (cs.rice.edu [128.42.1.30]) by mx1.FreeBSD.org (Postfix) with ESMTP id 09A3943D39; Wed, 22 Sep 2004 20:22:11 +0000 (GMT) (envelope-from alc@cs.rice.edu) Received: from localhost (calypso.cs.rice.edu [128.42.1.127]) by cs.rice.edu (Postfix) with ESMTP id ADF1D4AC12; Wed, 22 Sep 2004 15:22:10 -0500 (CDT) Received: from cs.rice.edu ([128.42.1.30]) by localhost (calypso.cs.rice.edu [128.42.1.127]) (amavisd-new, port 10024) with LMTP id 24187-01-19; Wed, 22 Sep 2004 15:22:10 -0500 (CDT) Received: by cs.rice.edu (Postfix, from userid 19572) id 4FC074AB34; Wed, 22 Sep 2004 15:22:10 -0500 (CDT) Date: Wed, 22 Sep 2004 15:22:10 -0500 From: Alan Cox To: Marcel Moolenaar Message-ID: <20040922202210.GE16687@cs.rice.edu> References: <200409221958.i8MJwhEL060898@repoman.freebsd.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <200409221958.i8MJwhEL060898@repoman.freebsd.org> User-Agent: Mutt/1.4.2i X-Virus-Scanned: by amavis-20030616-p7 at cs.rice.edu cc: cvs-src@FreeBSD.org cc: src-committers@FreeBSD.org cc: cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/ia64/include atomic.h X-BeenThere: cvs-src@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 22 Sep 2004 20:22:11 -0000 On Wed, Sep 22, 2004 at 07:58:43PM +0000, Marcel Moolenaar wrote: > marcel 2004-09-22 19:58:43 UTC > > FreeBSD src repository > > Modified files: > sys/ia64/include atomic.h > Log: > For the atomic_{add|clear|set|subtract} family of inlines, return the > old or previous value instead of void. This is not as is documented > in atomic(9), but is API (and ABI) compatible and simply makes sense. > This feature will primarily be used for atomic PTE updates in PMAP/ng. > > Revision Changes Path > 1.8 +4 -2 src/sys/ia64/include/atomic.h Indeed, this is useful. There is precedent for this on sparc64. That said, I have to admit that the inconsistency left me scratching my head for a few minutes when I first read the sparc64 pmap. It might be wise to come up with a different set of names for this variant. On ia64 and sparc64, they could have the same implementation. (Whereas, amd64 and i386 would probably have different implementations.) Regards, Alan