From owner-svn-src-all@FreeBSD.ORG Sun Apr 13 21:56:06 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 5DE0D64F; Sun, 13 Apr 2014 21:56:06 +0000 (UTC) Received: from moutng.kundenserver.de (moutng.kundenserver.de [212.227.17.24]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-SHA (128/128 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 08A9D19C5; Sun, 13 Apr 2014 21:56:05 +0000 (UTC) Received: from dynamic.1.17.e8edf383af80.685b35818d2c.afb.bredband2.com (dynamic.1.17.e8edf383af80.685b35818d2c.afb.bredband2.com [31.208.77.249]) by mrelayeu.kundenserver.de (node=mreue101) with ESMTP (Nemesis) id 0LaU5X-1XFhXW0bXT-00mN4V; Sun, 13 Apr 2014 23:55:57 +0200 Message-ID: <534B07EA.7080400@FreeBSD.org> Date: Sun, 13 Apr 2014 23:55:54 +0200 From: Christian Brueffer User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:24.0) Gecko/20100101 Thunderbird/24.4.0 MIME-Version: 1.0 To: Konstantin Belousov Subject: Re: svn commit: r264422 - head/sys/kern References: <201404132123.s3DLNGvJ048359@svn.freebsd.org> <20140413214633.GF4016@kib.kiev.ua> In-Reply-To: <20140413214633.GF4016@kib.kiev.ua> X-Enigmail-Version: 1.6 OpenPGP: id=3A67DC36; url=http://people.freebsd.org/~brueffer/brueffer.key.asc Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="1GN7UObGkwVAwht6FBC0rn66egmRIsVe4" X-Provags-ID: V02:K0:uH+XFkF4utCNM5oSFbjLx/ZSyWoUYYOIiJLOx7pRfcm WP8tUOEdRabyUqfnDpINoYojn/7Kf7ucuTEqUB3VWkOtmYViNT tKaXXZLKZhUiIQQGFlyktxy9SGx+SViURSHH5gxzeDrm2Gnk3S BjQ5e5ElFmFUg7Z7MgdYdtTiCyQX4sAyJdnsW2bY3F10D6leUM SOjvOAGe0cvtUNkEmcAeYm2kG0H2dv4t7lTw4Ee+TmB5xL4jh8 uaMcyYaRWNv4Y3CmHyAXs6dyoJfrlz2EtC0uVQQ4jN8DUUATI2 fhV/LEU2WZj9IjQ8e0GYFW5npn1AG6+zZqRxf1oMvpGhzFDpBO dqsmlC4NozukJd4ZuTCnCBiXRH9hJCRR19n7/lWmNOXo8/nNP0 hKZIGXFoykLqvpuQDTS20ZG+5JQvvTBJOuEjDPIHHV5n847BWk 9Hq0l Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 13 Apr 2014 21:56:06 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --1GN7UObGkwVAwht6FBC0rn66egmRIsVe4 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable On 4/13/14 11:46 PM, Konstantin Belousov wrote: > On Sun, Apr 13, 2014 at 09:23:16PM +0000, Christian Brueffer wrote: >> Author: brueffer >> Date: Sun Apr 13 21:23:15 2014 >> New Revision: 264422 >> URL: http://svnweb.freebsd.org/changeset/base/264422 >> >> Log: >> Free buf after usage. >> =20 >> CID: 1199377 >> Found with: Coverity Prevent(tm) >> MFC after: 1 week >> >> Modified: >> head/sys/kern/imgact_elf.c >> >> Modified: head/sys/kern/imgact_elf.c >> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D >> --- head/sys/kern/imgact_elf.c Sun Apr 13 21:13:33 2014 (r264421) >> +++ head/sys/kern/imgact_elf.c Sun Apr 13 21:23:15 2014 (r264422) >> @@ -1746,8 +1746,10 @@ __elfN(note_threadmd)(void *arg, struct=20 >> size =3D 0; >> __elfN(dump_thread)(td, buf, &size); >> KASSERT(*sizep =3D=3D size, ("invalid size")); >> - if (size !=3D 0 && sb !=3D NULL) >> + if (size !=3D 0 && sb !=3D NULL) { >> sbuf_bcat(sb, buf, size); >> + free(buf, M_TEMP); >> + } >> *sizep =3D size; >> } >> =20 > Why conditioning free() on size !=3D 0 ? > IMO free(buf) must be done always, since buf is initialized for the cas= e > when malloc() is not called. >=20 The corresponding malloc() call is behind a similar conditional, so it seemed good to be symmetrical here (since buf if NULL otherwise anyway). I can change it to call free() unconditionally if you prefer, I don't mind either way. Chris --1GN7UObGkwVAwht6FBC0rn66egmRIsVe4 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2.0.22 (Darwin) Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/ iQJ8BAEBCgBmBQJTSwfsXxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXQ5QzhCQjQ5MDgzNDUwNjkyOUM5Mjg2NDE3 OEM4MzY5ODQ3RTE2NDg3AAoJEHjINphH4WSHsxUP/1HTSqIZu21b5WUVI6CH1kPG W/xzDJDNXL8Ga9UnUYOFfPEBvU8L9f2FWyJJPuCwieUY4TpWSOeOgtgAFvekfW12 hq740oVExiPEDTE1hknAKF3jtzHxVylORUK1jqTbx/pD5IzXJyaRALEX3unNYqD+ 87IAzpVVoIfRaBFnj8ErGTa9kk8VTUPu+enhjKzXOQMvtNltYXAGAESodXg11K+r Fihz40TQWg+qWGWvVhEmlbw7dFXlqd94C6BxDYAw6Od2BU4mpBf6If55GkV5dN7I UxklWBQ9TGxJs5ObYwaqGN9TntHWXlO6YJJHSTs8unv0JaOikRZvb4uICqHRCgBa mv6m4Q/B34LMoQqbw0dUxRvKdxwTDXMh8/ptNe0scK2IAHfRoX1Gbfr2NmkbTyrk lz472+f8gaQ5Dj6koLUQF/NQ9vvxQk9NACDpWSW9jVJwR2jdKT20RYRVCIWpivcP dTtZAjGU/Udo7zzZ/O8agB5pLL7GKQJqyslXDSJg0Un61Zza7KFyy4I49KDiRJGQ klPIkSb+T43Ign76kXe3izz+ZSUoZrIr0N/dGiUQztLunyR3/aOX0hDNjFdLpN7n gowgyEPSkKB2RILyu9H+P0zCyhwRzjXDffgiNuYHhx87ZBd73r6LkC82iuUwk8Hj 3eepULDuo9N+10IF6+2X =Iwb2 -----END PGP SIGNATURE----- --1GN7UObGkwVAwht6FBC0rn66egmRIsVe4--