From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wm0-f65.google.com ([74.125.82.65]:35725 "EHLO mail-wm0-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751058AbcFQPcA (ORCPT ); Fri, 17 Jun 2016 11:32:00 -0400 Received: by mail-wm0-f65.google.com with SMTP id k184so593874wme.2 for ; Fri, 17 Jun 2016 08:31:59 -0700 (PDT) Subject: Re: [amd-gfx] [PATCH] drm/amdgpu: fix num_rbs exposed to userspace To: Alex Deucher , amd-gfx@lists.freedesktop.org References: <1466173225-14886-1-git-send-email-alexander.deucher@amd.com> Cc: Alex Deucher , stable@vger.kernel.org From: =?UTF-8?Q?Nicolai_H=c3=a4hnle?= Message-ID: <576417EC.7010300@gmail.com> Date: Fri, 17 Jun 2016 17:31:56 +0200 MIME-Version: 1.0 In-Reply-To: <1466173225-14886-1-git-send-email-alexander.deucher@amd.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Sender: stable-owner@vger.kernel.org List-ID: On 17.06.2016 16:20, Alex Deucher wrote: > This was accidently broken for harvest cards when the > code was refactored for Polaris support. > > Signed-off-by: Alex Deucher > Cc: stable@vger.kernel.org > --- > drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c > index 9ab28ca..e5c22cd 100644 > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c > @@ -459,7 +459,7 @@ static int amdgpu_info_ioctl(struct drm_device *dev, void *data, struct drm_file > dev_info.max_memory_clock = adev->pm.default_mclk * 10; > } > dev_info.enabled_rb_pipes_mask = adev->gfx.config.backend_enable_mask; > - dev_info.num_rb_pipes = adev->gfx.config.num_rbs; > + dev_info.num_rb_pipes = adev->gfx.config.max_backends_per_se; At a glance, that looks suspicious to me. num_rb_pipes becomes rb_pipes in libdrmm and then num_render_backends. We divide num_render_backends by the number of SEs * SHs in radeonsi. In a nutshell, radeonsi expects this to be the total number of RBs (including disabled/harvested ones). Nicolai > dev_info.num_hw_gfx_contexts = adev->gfx.config.max_hw_contexts; > dev_info._pad = 0; > dev_info.ids_flags = 0; >