From owner-svn-src-all@freebsd.org Thu Jun 9 02:18:18 2016 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 75197B6E2DD; Thu, 9 Jun 2016 02:18:18 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from bigwig.baldwin.cx (bigwig.baldwin.cx [IPv6:2001:470:1f11:75::1]) (using TLSv1 with cipher DHE-RSA-CAMELLIA256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 56AC91D82; Thu, 9 Jun 2016 02:18:18 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from John-Baldwins-MacBook-Pro.local (unknown [137.122.64.52]) by bigwig.baldwin.cx (Postfix) with ESMTPSA id EB760B94C; Wed, 8 Jun 2016 22:18:16 -0400 (EDT) Subject: Re: svn commit: r301562 - head/sys/dev/acpica To: "Conrad E. Meyer" , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org References: <201606071908.u57J8EZI011734@repo.freebsd.org> From: John Baldwin Message-ID: <1038ce21-2441-06f0-b849-4c4eab1c3b0e@FreeBSD.org> Date: Wed, 8 Jun 2016 22:18:15 -0400 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:45.0) Gecko/20100101 Thunderbird/45.1.1 MIME-Version: 1.0 In-Reply-To: <201606071908.u57J8EZI011734@repo.freebsd.org> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.2.7 (bigwig.baldwin.cx); Wed, 08 Jun 2016 22:18:17 -0400 (EDT) X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.22 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: Thu, 09 Jun 2016 02:18:18 -0000 On 6/7/16 3:08 PM, Conrad E. Meyer wrote: > Author: cem > Date: Tue Jun 7 19:08:13 2016 > New Revision: 301562 > URL: https://svnweb.freebsd.org/changeset/base/301562 > > Log: > Fix a minor leak in ACPI thermal > > Introduced in r301518. > > Reported by: Coverity > CID: 1356266 > Sponsored by: EMC / Isilon Storage Division > > Modified: > head/sys/dev/acpica/acpi_thermal.c > > Modified: head/sys/dev/acpica/acpi_thermal.c > ============================================================================== > --- head/sys/dev/acpica/acpi_thermal.c Tue Jun 7 18:50:36 2016 (r301561) > +++ head/sys/dev/acpica/acpi_thermal.c Tue Jun 7 19:08:13 2016 (r301562) > @@ -335,8 +335,10 @@ acpi_tz_startup(void *arg __unused) > int devcount, error, i; > > devclass_get_devices(acpi_tz_devclass, &devs, &devcount); > - if (devcount == 0) > + if (devcount == 0) { > + free(devs, M_TEMP); > return; > + } Ugh, I assumed we didn't return anything for a count of zero. I kind of think it's a bug that we return malloc(0) instead of NULL in that case. Looks like if malloc fails devclass_get_devices() doesn't set 'dev' or 'devcount' at all. We need to fail if it returns non-zero. -- John Baldwin