Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755113AbaDNV6U (ORCPT ); Mon, 14 Apr 2014 17:58:20 -0400 Received: from [207.46.163.203] ([207.46.163.203]:17221 "EHLO na01-bl2-obe.outbound.protection.outlook.com" rhost-flags-FAIL-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1751177AbaDNV6S (ORCPT ); Mon, 14 Apr 2014 17:58:18 -0400 X-WSS-ID: 0N41J0B-08-CY1-02 X-M-MSG: From: "Deucher, Alexander" To: Quentin Casasnovas , David Airlie CC: "linux-kernel@vger.kernel.org" , "stable@vger.kernel.org" , "Koenig, Christian" Subject: RE: [PATCH] drm/radeon: memory leak on bo reservation failure. Thread-Topic: [PATCH] drm/radeon: memory leak on bo reservation failure. Thread-Index: AQHPQsWRRvfF7vS4uku7cSKMOka0fZsRzvcw Date: Mon, 14 Apr 2014 21:43:26 +0000 Message-ID: References: <1395159412-12377-1-git-send-email-quentin.casasnovas@oracle.com> In-Reply-To: <1395159412-12377-1-git-send-email-quentin.casasnovas@oracle.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.180.168.240] Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 X-EOPAttributedMessage: 0 X-Forefront-Antispam-Report: CIP:165.204.84.222;CTRY:US;IPV:NLI;EFV:NLI;SFV:NSPM;SFS:(10009001)(6009001)(428001)(377454003)(199002)(189002)(51704005)(13464003)(19580395003)(80976001)(81542001)(87936001)(92726001)(2009001)(54356999)(84676001)(76176999)(80022001)(20776003)(47776003)(79102001)(46102001)(92566001)(77982001)(99396002)(50986999)(53416003)(50466002)(74502001)(81342001)(76482001)(2656002)(31966008)(83072002)(4396001)(33656001)(85852003)(44976005)(83322001)(19580405001)(86362001)(55846006)(23676002)(74662001);DIR:OUT;SFP:1101;SCL:1;SRVR:BLUPR02MB116;H:atltwp02.amd.com;FPR:BC1ED4B2.23C2AD51.EA5CB867.52668A41.2023F;MLV:sfv;PTR:InfoDomainNonexistent;A:1;MX:1;LANG:en; X-Forefront-PRVS: 0181F4652A X-OriginatorOrg: amd4.onmicrosoft.com Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from base64 to 8bit by mail.home.local id s3ELwSPn021946 > -----Original Message----- > From: Quentin Casasnovas [mailto:quentin.casasnovas@oracle.com] > Sent: Tuesday, March 18, 2014 12:17 PM > To: David Airlie > Cc: linux-kernel@vger.kernel.org; Quentin Casasnovas; > stable@vger.kernel.org; Koenig, Christian; Deucher, Alexander > Subject: [PATCH] drm/radeon: memory leak on bo reservation failure. > > On bo reservation failure, we end up leaking fpriv. > > Fixes: 5e386b574cf7e1 ("drm/radeon: fix missing bo reservation") > Cc: stable@vger.kernel.org > Cc: Christian König > Cc: Alex Deucher > Signed-off-by: Quentin Casasnovas Sorry I missed this. It looks like we probably want an updated version for newer kernels where radeon_vm_init() can fail as well. Reviewed-by: Alex Deucher Alex > --- > drivers/gpu/drm/radeon/radeon_kms.c | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/radeon/radeon_kms.c > b/drivers/gpu/drm/radeon/radeon_kms.c > index 66ed3ea..51cda80 100644 > --- a/drivers/gpu/drm/radeon/radeon_kms.c > +++ b/drivers/gpu/drm/radeon/radeon_kms.c > @@ -546,8 +546,11 @@ int radeon_driver_open_kms(struct drm_device > *dev, struct drm_file *file_priv) > radeon_vm_init(rdev, &fpriv->vm); > > r = radeon_bo_reserve(rdev->ring_tmp_bo.bo, false); > - if (r) > + if (r) { > + radeon_vm_fini(rdev, &fpriv->vm); > + kfree(fpriv); > return r; > + } > > /* map the ib pool buffer read only into > * virtual address space */ > -- > 1.8.3.2 > ????{.n?+???????+%?????ݶ??w??{.n?+????{??G?????{ay?ʇڙ?,j??f???h?????????z_??(?階?ݢj"???m??????G????????????&???~???iO???z??v?^?m???? ????????I?