Received: by 2002:a05:6a10:1d13:0:0:0:0 with SMTP id pp19csp920259pxb; Wed, 1 Sep 2021 12:42:16 -0700 (PDT) X-Google-Smtp-Source: ABdhPJw35TUO7h3rzoVqa3TlSY9swpW/tGilwvx3k/mnH9zNgVXEdgkFMfnwkCzbGaOmjl+zTeI4 X-Received: by 2002:a92:dd09:: with SMTP id n9mr804854ilm.298.1630525336199; Wed, 01 Sep 2021 12:42:16 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1630525336; cv=none; d=google.com; s=arc-20160816; b=h+A/RzGmq7UktOd5dqMhShhlG5c9rWdwf8MvJYsVMNr++SfL1D258NOnWuer75DPFn XDoZJ5gDv/4WNXZTDh4UgOdwMUDoqfuZExBB+56Uw2uyYqjeSdx2D83Uzzh6Eb7VOge/ KJpZlonZLMbwTP9YMgeeECSAUYRla1dHT16tbo6iJiMGiPm+Vzf7B2stRI1o2ci/CPLx LP22Y9RfxkK88E5IBG7RBPbe50WInqCgCnUh6hpiqtryDsvhFZ71S+PTpdWREI68sBB/ ovwnMQCOpfwnJUHhidWIo4ZwGslnQchDKipcxzoYxmY9zLTNuc5+i34QTcf+KO+8ZMkB ZOYQ== 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=E0Re4S148mdK81hK3esGNmc2zPCzY2Qaaoinzh/dudg=; b=IUgteno7jpqnHRdPwn7lTNiv40j936wqlLh9Fm8UXaHenelMG6mchxeg1R8OkreIV3 fBIcc8goaPYRhNW40iTOjP0Y72Z5Wah4Ebu2gyi2auBvekqvvjo407xHjndJNFnjO4oF +T/ALiwbULrG9A76h8Iocp0FajIu8EZy5ADs60VtywgMTxxLh3uUAFT/KfBmcRHXERY0 b1RyXlPFgf9VsfjTA9z5kYBS20ZWwlIB2Z2sUYSJR/FlnyLdsNK06GhhQ8NnxtN3vpgf lNtZIwxTSb5KScCngME/oYUiBHWjQxmn00rci3L0Y+RCFu9KIRhfoSvRNx07bAmLiidK lgLQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=VEwRBdpu; 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 k20si424270iog.64.2021.09.01.12.42.04; Wed, 01 Sep 2021 12:42:16 -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=VEwRBdpu; 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 S1346070AbhIAMtO (ORCPT + 99 others); Wed, 1 Sep 2021 08:49:14 -0400 Received: from mail.kernel.org ([198.145.29.99]:49980 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1345669AbhIAMoz (ORCPT ); Wed, 1 Sep 2021 08:44:55 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id F36EB610E5; Wed, 1 Sep 2021 12:39:03 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1630499944; bh=2+owa3xvviWgBFdf1buQiFV/ZaTCSRUbBMwh1p4ZiLE=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=VEwRBdpuMwtNBCufmXk0lWEG8lNGmQhTaM8WjB3EAwBkm3mDGJphnmqNDU3L+SQ9M kRoMnJlyq7zgfADB6rlqnHrkWMdxk2CAoSw8QWLMbMenaMlvDKENJbJxPCsvraGleC ldQVuhrBzv+3wKhlzlc6xUzFC9Qe34xCDCFtqmzo= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Shashank Sharma , Alex Deucher , =?UTF-8?q?Christian=20K=C3=B6nig?= Subject: [PATCH 5.13 026/113] drm/amdgpu: use the preferred pin domain after the check Date: Wed, 1 Sep 2021 14:27:41 +0200 Message-Id: <20210901122302.874591692@linuxfoundation.org> X-Mailer: git-send-email 2.33.0 In-Reply-To: <20210901122301.984263453@linuxfoundation.org> References: <20210901122301.984263453@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: Christian König commit 2a7b9a8437130fd328001f4edfac8eec98dfe298 upstream. For some reason we run into an use case where a BO is already pinned into GTT, but should be pinned into VRAM|GTT again. Handle that case gracefully as well. Reviewed-by: Shashank Sharma Reviewed-by: Alex Deucher Signed-off-by: Christian König Signed-off-by: Alex Deucher Cc: stable@vger.kernel.org Signed-off-by: Greg Kroah-Hartman --- drivers/gpu/drm/amd/amdgpu/amdgpu_object.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c @@ -937,11 +937,6 @@ int amdgpu_bo_pin_restricted(struct amdg return -EINVAL; } - /* This assumes only APU display buffers are pinned with (VRAM|GTT). - * See function amdgpu_display_supported_domains() - */ - domain = amdgpu_bo_get_preferred_pin_domain(adev, domain); - if (bo->tbo.pin_count) { uint32_t mem_type = bo->tbo.mem.mem_type; uint32_t mem_flags = bo->tbo.mem.placement; @@ -966,6 +961,11 @@ int amdgpu_bo_pin_restricted(struct amdg return 0; } + /* This assumes only APU display buffers are pinned with (VRAM|GTT). + * See function amdgpu_display_supported_domains() + */ + domain = amdgpu_bo_get_preferred_pin_domain(adev, domain); + if (bo->tbo.base.import_attach) dma_buf_pin(bo->tbo.base.import_attach);