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>