Received: by 2002:a05:6a10:5bc5:0:0:0:0 with SMTP id os5csp4839852pxb; Thu, 14 Oct 2021 13:03:46 -0700 (PDT) X-Google-Smtp-Source: ABdhPJy6JTgqeaULjnJQ03809YOJiwBRVyc0SWWJEEi3aWoqvyAUEEwVyiy7MpQpay/Y6ZMd4L1k X-Received: by 2002:a62:445:0:b0:44c:3b5b:f680 with SMTP id 66-20020a620445000000b0044c3b5bf680mr7546555pfe.30.1634241826460; Thu, 14 Oct 2021 13:03:46 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1634241826; cv=none; d=google.com; s=arc-20160816; b=Mw3FcMmdmwxRy5KMD2iMoSsH2JIUAChwE9lZzNMDQPZqI0ISv9tohMapfmVgkjsQB9 lQY//tKCDgKxgDvAT8BE4ebNTNVoXbF/VHpiOArhNmWAXymgaILUlGUJ7JYVx2Xluy2i ooLNFKJm7q6XbnVzjjMu0v45Oi6DWPtL4K9oJ53KpjbVYVAIe2gGu3JAN5Vz3R6LSHRP s0A7kzhcV/by8sdSEY93oKTZHOKaYH6s52OtCjWH8LGXdI8JMB/ua/hs326o014zpaBW pzZ35ZdKgejH9Z0VNwdbYVkSt46HvqoMdv8y5JAYn9STvjhiXrzIZ1SaPy9PWHCZP1z3 I71g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=zhCrL2qVbu2EtXsy5FO7FiIprvU/cw8KkIF5HwOpFAM=; b=KzZTJt8k4Xu2Uw8eG2tOwEgR2ZDuz1bzFUO/0rdnx4Tnkjh8JZWjbg7gExC+cfto19 /FoJNec50dn8NkJJUfXSHg5rmc38LIfAPugX/Hcnjf36gHd86FiM22irG2mteoT4k9Yx JuLlTq3eUCt1IYokoyX/eVH331S0QqwaMN3AsiPj76Zjsuze8zDYQ3dJbEd0rBD27V5O RDhc9d0Mwk1ZxGjcLeKPoZKuA6bBvz308/VCa31BDtOpYVNP2tZX35NnUHyfAbkGnZYR 1+fxv9o09EYR/IhBpZC9KFVg2i+nUuVpiQDiANBvzHVuWphgZ2oNteMZ/KfEAhdU2ddq in+g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=CC4aR8AV; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id ng10si5839085pjb.148.2021.10.14.13.03.33; Thu, 14 Oct 2021 13:03:46 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=CC4aR8AV; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233810AbhJNPHE (ORCPT + 99 others); Thu, 14 Oct 2021 11:07:04 -0400 Received: from mail.kernel.org ([198.145.29.99]:49670 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232946AbhJNPFI (ORCPT ); Thu, 14 Oct 2021 11:05:08 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id 1E864611C8; Thu, 14 Oct 2021 15:01:12 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1634223673; bh=DsPJl/iyh2vy74kC2KrgfpSrR9ujMHz1jx8pfkfVBtQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=CC4aR8AVTPw6oiedjt8+VI7rslpeIZw5VhqD7KBU6Ux4/e6SkNcoNgDMbCqh2y8za ccExKRXMvYDz2FSOgxjqmbBZ7qn5cA3P9E2hneVUQbY3LCDyef8RcTe5wv+M5WZ72D h5Hz7tQTndc0d5Cd/59vbyaAdfRF9UrJNF7gvLMg= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Hawking Zhang , Leslie Shi , Guchun Chen , =?UTF-8?q?Christian=20K=C3=B6nig?= , Alex Deucher , Sasha Levin Subject: [PATCH 5.14 23/30] drm/amdgpu: fix gart.bo pin_count leak Date: Thu, 14 Oct 2021 16:54:28 +0200 Message-Id: <20211014145210.288469726@linuxfoundation.org> X-Mailer: git-send-email 2.33.0 In-Reply-To: <20211014145209.520017940@linuxfoundation.org> References: <20211014145209.520017940@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Leslie Shi [ Upstream commit 66805763a97f8f7bdf742fc0851d85c02ed9411f ] gmc_v{9,10}_0_gart_disable() isn't called matched with correspoding gart_enbale function in SRIOV case. This will lead to gart.bo pin_count leak on driver unload. Cc: Hawking Zhang Signed-off-by: Leslie Shi Signed-off-by: Guchun Chen Reviewed-by: Christian König Signed-off-by: Alex Deucher Signed-off-by: Sasha Levin --- drivers/gpu/drm/amd/amdgpu/gmc_v10_0.c | 3 ++- drivers/gpu/drm/amd/amdgpu/gmc_v9_0.c | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/amd/amdgpu/gmc_v10_0.c b/drivers/gpu/drm/amd/amdgpu/gmc_v10_0.c index 4523df2785d6..5b6317bf9751 100644 --- a/drivers/gpu/drm/amd/amdgpu/gmc_v10_0.c +++ b/drivers/gpu/drm/amd/amdgpu/gmc_v10_0.c @@ -1094,6 +1094,8 @@ static int gmc_v10_0_hw_fini(void *handle) { struct amdgpu_device *adev = (struct amdgpu_device *)handle; + gmc_v10_0_gart_disable(adev); + if (amdgpu_sriov_vf(adev)) { /* full access mode, so don't touch any GMC register */ DRM_DEBUG("For SRIOV client, shouldn't do anything.\n"); @@ -1102,7 +1104,6 @@ static int gmc_v10_0_hw_fini(void *handle) amdgpu_irq_put(adev, &adev->gmc.ecc_irq, 0); amdgpu_irq_put(adev, &adev->gmc.vm_fault, 0); - gmc_v10_0_gart_disable(adev); return 0; } diff --git a/drivers/gpu/drm/amd/amdgpu/gmc_v9_0.c b/drivers/gpu/drm/amd/amdgpu/gmc_v9_0.c index 7eb70d69f760..f3cd2b3fb4cc 100644 --- a/drivers/gpu/drm/amd/amdgpu/gmc_v9_0.c +++ b/drivers/gpu/drm/amd/amdgpu/gmc_v9_0.c @@ -1764,6 +1764,8 @@ static int gmc_v9_0_hw_fini(void *handle) { struct amdgpu_device *adev = (struct amdgpu_device *)handle; + gmc_v9_0_gart_disable(adev); + if (amdgpu_sriov_vf(adev)) { /* full access mode, so don't touch any GMC register */ DRM_DEBUG("For SRIOV client, shouldn't do anything.\n"); @@ -1772,7 +1774,6 @@ static int gmc_v9_0_hw_fini(void *handle) amdgpu_irq_put(adev, &adev->gmc.ecc_irq, 0); amdgpu_irq_put(adev, &adev->gmc.vm_fault, 0); - gmc_v9_0_gart_disable(adev); return 0; } -- 2.33.0