From nobody Thu Aug 3 14:13:22 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4RGrRQ62B9z2tvhl; Thu, 3 Aug 2023 14:13:22 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4RGrRQ5S9Gz4HBm; Thu, 3 Aug 2023 14:13:22 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1691072002; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hc3u8geD4EIWSi2pySFKM0lu8B7oUCnSbwbizsXBGPA=; b=K9aYZcoYpx96y3WK5SBPboeqG/7cv1MkmEsteHw8NKn/KAGtU0257f8aitklWSRSxEeLhc yeFiea+8bj+7712mXZtQFyBMEycmwthNz32iqymm24gWPNwGmA5SOT3cLI34RJzBqMsr7I IDucnA+qtS6gjMvufqsT8MCDMp4vq2iS/2oPf3Xd4Y5FqOQald28oGMPF0IuMzrhNpndTS bwnAM21kZ7r2tS62h78yOS+wHKg9eENoOMEeNnjMes6c6KlP1l5hVKmObRHu+ESN4tttBZ atElux/uu2LsNAo5lNhq/lOQFsFYkrrb03leOv4I82uLcK5YZpJmJ34xYkrfaw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1691072002; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hc3u8geD4EIWSi2pySFKM0lu8B7oUCnSbwbizsXBGPA=; b=QovEs3ZiYcIVxG4uSBvteiTuwip9+ze/p1UOVq91B6OUuMppLN4mCv6vKfirkm1DeF7ufh rW4WSSRqlNWqDJYcC4PzbJB6r74s1LZSSmidgKOtGaa08UhOqe21UMaBkofHKzMtuh+Wzl LCnL9EV5Q6kclYO5dEYWUotQVSBHMSsMiC6sIHqcWn8ZKD/T3riImbAOkBk+LmEvzFcgiD lu1vyZP9bCmavsp6AQ4tRR+L5pxtwuuym65V9zPA0yNPOaug+rVOBf6SsoavoV6bQOyQ+y m9EJ+qxua5yp0keULZb+UtWjXgV6P/6xrekTmj3YeB0Yi7x2/kFthS6kFzC5rw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1691072002; a=rsa-sha256; cv=none; b=KDODMKstxycwzJYKJUSkWLSnIxtMx+A5LLPljbEGEYK9ec4tDSC6v+5QTPlucbQoymiecq vdGPT2/E3pQ7uYC8zltbfTQF1JnyE5227BIklgHenv8qYjPaDPhkW6yxoKswuP231NXNNe qXMDetErqYqXUEokZWYaRmV9ZzHSGeVGGrrpMUDP+uN28NG9R1OcRWlPVp72VaIInBbUJ3 CPf6I7Q+TS2wJXV/cY31Bq2/DSsKxhiBiPQAYDmLrXXvHouYFibNpBJDiqM330gAirosW4 KmcOKonT3K8wiYd5bjOTXUFSpOGSPWEPLo98B+K8rvvs0xsvqGkK22Z9nQpSjQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4RGrRQ4RbCz8hr; Thu, 3 Aug 2023 14:13:22 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 373EDMIf007596; Thu, 3 Aug 2023 14:13:22 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 373EDMZQ007595; Thu, 3 Aug 2023 14:13:22 GMT (envelope-from git) Date: Thu, 3 Aug 2023 14:13:22 GMT Message-Id: <202308031413.373EDMZQ007595@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mitchell Horne Subject: git: 9c0a2d522f3a - main - hwpmc_armv7: plug memory leak List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mhorne X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 9c0a2d522f3a18fc795a7dd6266d2be2aff4b084 Auto-Submitted: auto-generated The branch main has been updated by mhorne: URL: https://cgit.FreeBSD.org/src/commit/?id=9c0a2d522f3a18fc795a7dd6266d2be2aff4b084 commit 9c0a2d522f3a18fc795a7dd6266d2be2aff4b084 Author: Mitchell Horne AuthorDate: 2023-08-03 14:10:26 +0000 Commit: Mitchell Horne CommitDate: 2023-08-03 14:13:10 +0000 hwpmc_armv7: plug memory leak Free allocated per-CPU structures in the pcpu_fini and finalize methods. While here, add debug trace entries to these methods. Reviewed by: jkoshy, andrew MFC after: 1 week Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D41269 --- sys/dev/hwpmc/hwpmc_armv7.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/sys/dev/hwpmc/hwpmc_armv7.c b/sys/dev/hwpmc/hwpmc_armv7.c index 89cb27457bd2..6275e0f98c8b 100644 --- a/sys/dev/hwpmc/hwpmc_armv7.c +++ b/sys/dev/hwpmc/hwpmc_armv7.c @@ -414,7 +414,7 @@ armv7_pcpu_init(struct pmc_mdep *md, int cpu) KASSERT(cpu >= 0 && cpu < pmc_cpu_max(), ("[armv7,%d] wrong cpu number %d", __LINE__, cpu)); - PMCDBG1(MDP, INI, 1, "armv7-init cpu=%d", cpu); + PMCDBG0(MDP, INI, 1, "armv7-pcpu-init"); armv7_pcpu[cpu] = pac = malloc(sizeof(struct armv7_cpu), M_PMC, M_WAITOK|M_ZERO); @@ -450,6 +450,8 @@ armv7_pcpu_fini(struct pmc_mdep *md, int cpu) { uint32_t pmnc; + PMCDBG0(MDP, INI, 1, "armv7-pcpu-fini"); + pmnc = cp15_pmcr_get(); pmnc &= ~ARMV7_PMNC_ENABLE; cp15_pmcr_set(pmnc); @@ -459,6 +461,10 @@ armv7_pcpu_fini(struct pmc_mdep *md, int cpu) cp15_pminten_clr(pmnc); cp15_pmovsr_set(pmnc); + free(armv7_pcpu[cpu]->pc_armv7pmcs, M_PMC); + free(armv7_pcpu[cpu], M_PMC); + armv7_pcpu[cpu] = NULL; + return 0; } @@ -529,5 +535,7 @@ pmc_armv7_initialize(void) void pmc_armv7_finalize(struct pmc_mdep *md) { + PMCDBG0(MDP, INI, 1, "armv7-finalize"); + free(armv7_pcpu, M_PMC); }