svn commit: r190919 - in head/sys: amd64/amd64 amd64/include i386/i386 i386/include

Alexander Kabaev kabaev at gmail.com
Sun Apr 12 13:06:01 UTC 2009


On Sun, 12 Apr 2009 14:35:40 +0200
Christoph Mallon <christoph.mallon at gmx.de> wrote:

> Alexander Kabaev schrieb:
> > On Sat, 11 Apr 2009 09:35:28 -0700
> > Steve Kargl <sgk at troutmask.apl.washington.edu> wrote:
> > 
> >> On Sat, Apr 11, 2009 at 02:01:01PM +0000, Ed Schouten wrote:
> >>> Author: ed
> >>> Date: Sat Apr 11 14:01:01 2009
> >>> New Revision: 190919
> >>> URL: http://svn.freebsd.org/changeset/base/190919
> >>>
> >>> Log:
> >>>   Simplify in/out functions (for i386 and AMD64).
> >>>   
> >>>   Remove a hack to generate more efficient code for port numbers
> >>> below 0x100, which has been obsolete for at least ten years,
> >>> because GCC has an asm constraint to specify that.
> >>>   
> >>>   Submitted by:	Christoph Mallon <christoph mallon gmx de>
> >>>
> >> I thought Christoph and bde were still hashing out the correctness
> >> of this patch.
> >>
> >> http://lists.freebsd.org/pipermail/freebsd-amd64/2009-April/012064.html
> >>
> >> -- 
> >> Steve
> > 
> > The patch is inconsistent in regards to usage of volatile vs.
> > __volatile even within itself. I think the code is sloppy and was
> > not ready to be committed yet. Please fix or back out.
> 
> Backing it out because of two underscores (!) would be 
> counterproductive: It removes about 150 lines of hard to read hacks, 
> which are unnecessary for at least a decade. GCC 2.95, which was 
> released in 1999 supports the "N" constraint for inline asm. Perhaps 
> olders do, too, but you cannot get older GCCs from the official site.
> Attached is a patch, which replaces all __inline and __volatile in
> the touched headers by thir ISO equivalents - again there hasn't been
> a reason to use the alternate GCC keywords for at least a decade.
> Also "inline" and "volatile" are already used hundreds of times in
> sys/. The patch is simply the result of
> %s/\<__\(inline\|volatile\)\>/\1/.
> 
> 	Christoph

Underscores as the sole reason for backing out might as well be
counterproductive. The real objection was not about underscored
though, but about consistency. Your patch was not consistent itself
and it left files it touched with unholy mixture of plain and
underscored versions sprinkled all over with no apparent system.

The way to handle this change was:
1. Prepare functional patch, commit.
2. Prepare underscore removal patch, commit.

Both steps require proper review and all reviewer concerns should have
been addressed or reviewer should be persuaded to withdraw his
objections if any.

--
Alexander Kabaev
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 188 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/svn-src-head/attachments/20090412/a4f125d7/signature.pgp


More information about the svn-src-head mailing list