Date: Tue, 27 Nov 2001 11:57:56 -0800 From: Luigi Rizzo <rizzo@aciri.org> To: "Andrew R. Reiter" <arr@FreeBSD.ORG> Cc: "Bruce A. Mah" <bmah@packetdesign.com>, freebsd-net@FreeBSD.ORG Subject: Re: RFC: MFC M_ZERO usage for bpf.c Message-ID: <20011127115755.A1151@iguana.aciri.org> In-Reply-To: <Pine.NEB.3.96L.1011127145013.17368A-100000@fledge.watson.org> References: <200111271947.fARJlaq00597@nimitz.packetdesign.com> <Pine.NEB.3.96L.1011127145013.17368A-100000@fledge.watson.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Nov 27, 2001 at 02:52:49PM -0500, Andrew R. Reiter wrote:
>
> Just as a note, I decided against MFC'ing this and similar changes because
> I didn't feel it was necesary for -STABLE to have this "fix."
why not ? code is more compact (and cache friendly) and readable,
diffs from HEAD are reduced, no functional changes... I see only
good things in these MFCs.
While we are on the topic, I would also love to see more consistency
in the use of macros vs. inline functions. E.g. below we have
MALLOC(d, struct bpf_d *, sizeof(*d), M_BPF, M_WAITOK | M_ZERO);
and
bp = (struct bpf_if *)malloc(sizeof(*bp), M_BPF, M_DONTWAIT | M_ZERO);
and the same occurs elsewhere for free() and FREE(). This is confusing
because it leads you into thinking that they are two different things
while they are not.
cheers
luigi
> On Tue, 27 Nov 2001, Bruce A. Mah wrote:
>
> :Hi--
> :
> :I've been reading through src/sys/net/bpf.c, and I noticed that the
> :changes to make it use M_ZERO haven't been MFC-ed to RELENG_4 yet. Any
> :objection if I do this? (Nothing broke in my quick testing.)
> :
> :Thanks,
> :
> :Bruce.
> :
> :Index: bpf.c
> :===================================================================
> :RCS file: /usr/ncvs/src/sys/net/bpf.c,v
> :retrieving revision 1.59.2.6
> :diff -u -r1.59.2.6 bpf.c
> :--- bpf.c 20 Sep 2001 14:31:33 -0000 1.59.2.6
> :+++ bpf.c 27 Nov 2001 18:49:45 -0000
> :@@ -358,8 +358,7 @@
> : if (d)
> : return (EBUSY);
> : make_dev(&bpf_cdevsw, minor(dev), 0, 0, 0600, "bpf%d", lminor(dev));
> :- MALLOC(d, struct bpf_d *, sizeof(*d), M_BPF, M_WAITOK);
> :- bzero(d, sizeof(*d));
> :+ MALLOC(d, struct bpf_d *, sizeof(*d), M_BPF, M_WAITOK | M_ZERO);
> : dev->si_drv1 = d;
> : d->bd_bufsize = bpf_bufsize;
> : d->bd_sig = SIGIO;
> :@@ -1285,11 +1284,10 @@
> : u_int dlt, hdrlen;
> : {
> : struct bpf_if *bp;
> :- bp = (struct bpf_if *)malloc(sizeof(*bp), M_BPF, M_DONTWAIT);
> :+ bp = (struct bpf_if *)malloc(sizeof(*bp), M_BPF, M_DONTWAIT | M_ZERO);
> : if (bp == 0)
> : panic("bpfattach");
> :
> :- bp->bif_dlist = 0;
> : bp->bif_ifp = ifp;
> : bp->bif_dlt = dlt;
> :
> :
> :
> :
>
> --
> Andrew R. Reiter
> arr@watson.org
> arr@FreeBSD.org
>
>
> To Unsubscribe: send mail to majordomo@FreeBSD.org
> with "unsubscribe freebsd-net" in the body of the message
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-net" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20011127115755.A1151>
