Received: by 2002:ac0:946b:0:0:0:0:0 with SMTP id j40csp2483585imj; Mon, 18 Feb 2019 06:49:09 -0800 (PST) X-Google-Smtp-Source: AHgI3IZ96ulrqz4GCOeaUkacg8YXw5xwQRt+v/V9ghtuwYmBUNP2vBZnPzP04Ly6d6B+SZU7RjRa X-Received: by 2002:a17:902:8a:: with SMTP id a10mr26128544pla.158.1550501349195; Mon, 18 Feb 2019 06:49:09 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1550501349; cv=none; d=google.com; s=arc-20160816; b=yA/AdKJU/mearrBaJCJg7WHRai1iaQ33QmG68jYZ9ILT+vsnFVW3BuRuLu8c9atkN0 0PCnjwYHmm+gnqyN8ZXES+/f9qwvXy+wzE1U2Yrw4iuXkFdkANQHFoIapQKQgG4JpeOq laOz0aEoCrjR1xzOcasoo/jyz3+XtkZqQLvlA3nNSvLUdtSi7BKj7MmxpCx2jsyeZaM+ 2X+vib3wow2tl8qAwEVQ87JONjrr9SB2GHEZBUoC/Eaxp6cDeeb9ls28lk086isl7rfg xHlJFqJ3faSg93ubkGBc+A++f1N7aMS5015Pi4zSYsgdbrYwnn6Wr8R+AaEXmGC8EuR+ 5d9w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=pDfSX90SOXmBfOmn8cHy4PECInVUrRody2V3IRezlmY=; b=ZYltIVwYVZajIaHyXWdyaYA48eWLkYNelZZLRwcHrROFBJ4la50NgCsYFz6Hki2/ok w6bojqpGfml9MpjR61Dk9B6nwTOd3K/t9r30zbevc0RLQia7yBvBx5eJ3Xa8KQ2xljIv PgoDDkPn1zWfaf8wFgG7b/ajv795zFVoFdrvdZ0UX4tC/oI7ztcjpQnN5oLBOKbTBCVR uC2wxCaSuElo32XfPMqZ4swEcoUx3Kefd5nNvO6oq+TyAalFP8dLymUe2BnMO301JWEH Mc5LkaMbGYQ05Vu54hA3flRejzosgQQXLKEH7bN87DUcYgFf9Sv4/oW4hQu+8ThmZjvo A05Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=fFwmDbnY; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id cq17si3470575plb.67.2019.02.18.06.48.53; Mon, 18 Feb 2019 06:49:09 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=fFwmDbnY; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1732336AbfBROsC (ORCPT + 99 others); Mon, 18 Feb 2019 09:48:02 -0500 Received: from mail.kernel.org ([198.145.29.99]:51442 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1731301AbfBRNpV (ORCPT ); Mon, 18 Feb 2019 08:45:21 -0500 Received: from localhost (5356596B.cm-6-7b.dynamic.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 611E2217F5; Mon, 18 Feb 2019 13:45:20 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1550497520; bh=UZqmBvyGkp5XKRpopOT/b04dKpEo3ya82MLY4LnMAvI=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=fFwmDbnYOAnmLFE5iWIdIrUL26mxgAKKsFQvCyI8SqRFXCIhmjTPAqW8zzSBU1/UA bRnYo1DRiaq1fCI9K0hTEtZOdNuIBZPpEKL5UvaOSu0KuzLV5WjoEXospdXwr/hN4K 2DacbtPS8EUiUQsQ3SSJ86Kbe4/RMpROkpxRgJfY= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Emily Deng , Xiangliang Yu , Alex Deucher , Sasha Levin Subject: [PATCH 4.20 04/92] drm/amdgpu/sriov:Correct pfvf exchange logic Date: Mon, 18 Feb 2019 14:42:07 +0100 Message-Id: <20190218133455.030250084@linuxfoundation.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20190218133454.668268457@linuxfoundation.org> References: <20190218133454.668268457@linuxfoundation.org> User-Agent: quilt/0.65 X-stable: review X-Patchwork-Hint: ignore MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 4.20-stable review patch. If anyone has any objections, please let me know. ------------------ [ Upstream commit b8cf66182eddb22e9c7539821ed6eecdb4f86d1a ] The pfvf exchange need be in exclusive mode. And add pfvf exchange in gpu reset. Signed-off-by: Emily Deng Reviewed-By: Xiangliang Yu Signed-off-by: Alex Deucher Signed-off-by: Sasha Levin --- drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 8 ++++---- drivers/gpu/drm/amd/amdgpu/mxgpu_ai.c | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c index 30bc345d6fdf..8547fdaf8273 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c @@ -1684,8 +1684,10 @@ static int amdgpu_device_ip_init(struct amdgpu_device *adev) amdgpu_xgmi_add_device(adev); amdgpu_amdkfd_device_init(adev); - if (amdgpu_sriov_vf(adev)) + if (amdgpu_sriov_vf(adev)) { + amdgpu_virt_init_data_exchange(adev); amdgpu_virt_release_full_gpu(adev, true); + } return 0; } @@ -2597,9 +2599,6 @@ int amdgpu_device_init(struct amdgpu_device *adev, goto failed; } - if (amdgpu_sriov_vf(adev)) - amdgpu_virt_init_data_exchange(adev); - amdgpu_fbdev_init(adev); r = amdgpu_pm_sysfs_init(adev); @@ -3271,6 +3270,7 @@ static int amdgpu_device_reset_sriov(struct amdgpu_device *adev, r = amdgpu_ib_ring_tests(adev); error: + amdgpu_virt_init_data_exchange(adev); amdgpu_virt_release_full_gpu(adev, true); if (!r && adev->virt.gim_feature & AMDGIM_FEATURE_GIM_FLR_VRAMLOST) { atomic_inc(&adev->vram_lost_counter); diff --git a/drivers/gpu/drm/amd/amdgpu/mxgpu_ai.c b/drivers/gpu/drm/amd/amdgpu/mxgpu_ai.c index 8cbb4655896a..b11a1c17a7f2 100644 --- a/drivers/gpu/drm/amd/amdgpu/mxgpu_ai.c +++ b/drivers/gpu/drm/amd/amdgpu/mxgpu_ai.c @@ -174,7 +174,7 @@ static int xgpu_ai_send_access_requests(struct amdgpu_device *adev, return r; } /* Retrieve checksum from mailbox2 */ - if (req == IDH_REQ_GPU_INIT_ACCESS) { + if (req == IDH_REQ_GPU_INIT_ACCESS || req == IDH_REQ_GPU_RESET_ACCESS) { adev->virt.fw_reserve.checksum_key = RREG32_NO_KIQ(SOC15_REG_OFFSET(NBIO, 0, mmBIF_BX_PF0_MAILBOX_MSGBUF_RCV_DW2)); -- 2.19.1