From owner-cvs-src-old@FreeBSD.ORG Mon Oct 12 16:05:49 2009 Return-Path: Delivered-To: cvs-src-old@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id E7D57106568B for ; Mon, 12 Oct 2009 16:05:49 +0000 (UTC) (envelope-from attilio@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id D5BB38FC08 for ; Mon, 12 Oct 2009 16:05:49 +0000 (UTC) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id n9CG5n4K042461 for ; Mon, 12 Oct 2009 16:05:49 GMT (envelope-from attilio@repoman.freebsd.org) Received: (from svn2cvs@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id n9CG5nwA042460 for cvs-src-old@freebsd.org; Mon, 12 Oct 2009 16:05:49 GMT (envelope-from attilio@repoman.freebsd.org) Message-Id: <200910121605.n9CG5nwA042460@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: svn2cvs set sender to attilio@repoman.freebsd.org using -f From: Attilio Rao Date: Mon, 12 Oct 2009 16:05:31 +0000 (UTC) To: cvs-src-old@freebsd.org X-FreeBSD-CVS-Branch: RELENG_8 Subject: cvs commit: src/sys/amd64/include atomic.h src/sys/i386/include atomic.h X-BeenThere: cvs-src-old@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: **OBSOLETE** CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 12 Oct 2009 16:05:50 -0000 attilio 2009-10-12 16:05:31 UTC FreeBSD src repository Modified files: (Branch: RELENG_8) sys/amd64/include atomic.h sys/i386/include atomic.h Log: SVN rev 197985 on 2009-10-12 16:05:31Z by attilio MFC r197803, r197824, r197910: Per their definition, atomic instructions used in conjuction with memory barriers should also ensure that the compiler doesn't reorder paths where they are used. GCC, however, does that aggressively, even in presence of volatile operands. The most reliable way GCC offers for avoid instructions reordering is clobbering "memory". Not all our memory barriers, right now, clobber memory for GCC-like compilers. Fix these cases. Approved by: re (kib) Revision Changes Path 1.46.2.2 +60 -44 src/sys/amd64/include/atomic.h 1.51.2.2 +57 -41 src/sys/i386/include/atomic.h