Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 14 Jun 2010 23:01:54 +1000 (EST)
From:      Bruce Evans <brde@optusnet.com.au>
To:        Gabor Kovesdan <gabor@FreeBSD.org>
Cc:        svn-src-head@FreeBSD.org, Lawrence Stewart <lstewart@FreeBSD.org>, svn-src-all@FreeBSD.org, src-committers@FreeBSD.org
Subject:   Re: svn commit: r209119 - head/sys/sys
Message-ID:  <20100614225822.O37830@delplex.bde.org>
In-Reply-To: <4C14B0EA.8090500@FreeBSD.org>
References:  <201006130239.o5D2du3m086332@svn.freebsd.org> <20100613101025.GD1320@garage.freebsd.pl> <4C14B0EA.8090500@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, 13 Jun 2010, Gabor Kovesdan wrote:

>>> +/*
>>> + * Utility macros.
>>> + */
>>> +#define DPCPU_SUM(n, var, sum) 
>>> \
>>> +do { 
>>> \
>>> +	(sum) = 0;							\
>>> +	u_int i;							\
>>> +	CPU_FOREACH(i)							\
>>> +		(sum) += (DPCPU_ID_PTR(i, n))->var;			\
>>> +} while (0)
>>> 
>> I'd suggest first swapping variable declaration and '(sum) = 0;'.
>> Also using 'i' as a counter in macro can easly lead to name collision.
>> If you need to do it, I'd suggest '_i' or something.
>> Maybe it would be better to make it an inline function rather than macro?
>> 
> And why using old BSD-stlye u_int? style(9) also suggest using ISO C types.

That is for fixed-width types (uintN_t instead of u_intN_t).  KNF still uses
the abbreviation u_int for `unsigned' or worse `unsigned int', except where
namespace issues prevent use of u_nt.

Bruce



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