From owner-svn-src-head@FreeBSD.ORG Wed Oct 29 16:02:25 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 7A3C6FFE; Wed, 29 Oct 2014 16:02:25 +0000 (UTC) Received: from bigwig.baldwin.cx (bigwig.baldwin.cx [IPv6:2001:470:1f11:75::1]) (using TLSv1 with cipher DHE-RSA-CAMELLIA256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 514A6DF7; Wed, 29 Oct 2014 16:02:25 +0000 (UTC) Received: from jhbbsd.localnet (unknown [209.249.190.124]) by bigwig.baldwin.cx (Postfix) with ESMTPSA id D3517B9B4; Wed, 29 Oct 2014 12:02:23 -0400 (EDT) From: John Baldwin To: Konstantin Belousov Subject: Re: svn commit: r273784 - in head/sys: amd64/ia32 compat/freebsd32 i386/i386 kern net Date: Wed, 29 Oct 2014 12:00:49 -0400 User-Agent: KMail/1.13.5 (FreeBSD/8.4-CBSD-20140415; KDE/4.5.5; amd64; ; ) References: <201410281528.s9SFSLs2013764@svn.freebsd.org> <20141029042007.N2423@besplex.bde.org> <20141029155230.GE53947@kib.kiev.ua> In-Reply-To: <20141029155230.GE53947@kib.kiev.ua> MIME-Version: 1.0 Content-Type: Text/Plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Message-Id: <201410291200.49330.jhb@freebsd.org> X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.2.7 (bigwig.baldwin.cx); Wed, 29 Oct 2014 12:02:23 -0400 (EDT) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, Bruce Evans X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 29 Oct 2014 16:02:25 -0000 On Wednesday, October 29, 2014 11:52:30 am Konstantin Belousov wrote: > On Wed, Oct 29, 2014 at 06:26:42AM +1100, Bruce Evans wrote: > > On Tue, 28 Oct 2014, Konstantin Belousov wrote: > > > > > Log: > > > Replace some calls to fuword() by fueword() with proper error checking. > > > > I just noticed some more API design errors. The pointer type for new > > APIs should be [qualifed] wordsize_t *, not [qualified] void *. Using > > void * reduces type safety for almost no benefits. The casuword() > > family already doesn't use void *. > casuword() has very limited use, it was invented for umtx, and used > only there. That said, I tend to agree with somewhat implicit note > that base argument for fuword() and family should be vm_offset_t. I think Bruce is suggesting 'volatile long *' or 'volatile int32_t *' rather than vm_offset_t. > Still, lets move by small steps. Below is the patch to add volatile > qualifier to base, and remove __DEVOLATILE() from kern_umtx.c. I > converted suword() as well, since I do not see why the same arguments > which support change for fuword() are not applicable to suword(). > > The intr variants are left alone. > > Patch was only compile-tested on x86. This looks good to me, thanks! -- John Baldwin