Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 10 Mar 2013 14:54:19 +1100 (EST)
From:      Bruce Evans <brde@optusnet.com.au>
To:        Davide Italiano <davide@FreeBSD.org>
Cc:        svn-src-head@FreeBSD.org, svn-src-all@FreeBSD.org, src-committers@FreeBSD.org
Subject:   Re: svn commit: r248113 - head/sys/kern
Message-ID:  <20130310143353.G1358@besplex.bde.org>
In-Reply-To: <201303092003.r29K3BPc089195@svn.freebsd.org>
References:  <201303092003.r29K3BPc089195@svn.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, 9 Mar 2013, Davide Italiano wrote:

> Log:
>  Fixup r248032:
>  Change size requested to malloc(9) now that callwheel buckets are
>  callout_list and not callout_tailq anymore. This change was already
>  there but it seems it got lost after code churn in r248032.
>
>  Reported by:	alc, kib

This still has the bad style that helped cause the bug.

> Modified: head/sys/kern/kern_timeout.c
> ==============================================================================
> --- head/sys/kern/kern_timeout.c	Sat Mar  9 20:01:35 2013	(r248112)
> +++ head/sys/kern/kern_timeout.c	Sat Mar  9 20:03:10 2013	(r248113)
> @@ -294,7 +294,7 @@ callout_cpu_init(struct callout_cpu *cc)
>
> 	mtx_init(&cc->cc_lock, "callout", NULL, MTX_SPIN | MTX_RECURSE);
> 	SLIST_INIT(&cc->cc_callfree);
> -	cc->cc_callwheel = malloc(sizeof(struct callout_tailq) * callwheelsize,
> +	cc->cc_callwheel = malloc(sizeof(struct callout_list) * callwheelsize,
> 	    M_CALLOUT, M_WAITOK);
> 	for (i = 0; i < callwheelsize; i++)
> 		LIST_INIT(&cc->cc_callwheel[i]);
>

sizeof(*cc->cc_callwheel) is less verbose and works irrespective of the type
of *cc->cc_callwheel.

In kern, not quite half the malloc()'s have this style bug.  Also, at
least in kern:
- most style bugs in the form of using the MALLOC() obfuscation have been
   fixed
- most style bugs in the form of casting the result of malloc() to support
   C++ have been fixed.  The remaining ones are usually accompanied by the
   style bug of putting a space after the cast.

Bruce



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