Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 29 Oct 2014 12:00:49 -0400
From:      John Baldwin <jhb@freebsd.org>
To:        Konstantin Belousov <kostikbel@gmail.com>
Cc:        svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, Bruce Evans <brde@optusnet.com.au>
Subject:   Re: svn commit: r273784 - in head/sys: amd64/ia32 compat/freebsd32 i386/i386 kern net
Message-ID:  <201410291200.49330.jhb@freebsd.org>
In-Reply-To: <20141029155230.GE53947@kib.kiev.ua>
References:  <201410281528.s9SFSLs2013764@svn.freebsd.org> <20141029042007.N2423@besplex.bde.org> <20141029155230.GE53947@kib.kiev.ua>

next in thread | previous in thread | raw e-mail | index | archive | help
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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201410291200.49330.jhb>