From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?ISO-8859-1?Q?Christian_K=F6nig?= Subject: Re: [PATCH] drm/radeon: TTM must be init with cpu-visible VRAM, v2 Date: Fri, 28 Feb 2014 20:56:26 +0100 Message-ID: <5310E9EA.8020606@vodafone.de> References: <20140228205023.9677a7f9.cand@gmx.com> Mime-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1"; Format="flowed" Content-Transfer-Encoding: quoted-printable Return-path: Received: from pegasos-out.vodafone.de (pegasos-out.vodafone.de [80.84.1.38]) by gabe.freedesktop.org (Postfix) with ESMTP id C6518FB961 for ; Fri, 28 Feb 2014 11:56:38 -0800 (PST) In-Reply-To: <20140228205023.9677a7f9.cand@gmx.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: dri-devel-bounces@lists.freedesktop.org Errors-To: dri-devel-bounces@lists.freedesktop.org To: Lauri Kasanen , dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org Am 28.02.2014 19:50, schrieb Lauri Kasanen: > Without this, a bo may get created in the cpu-inaccessible vram. > Before the CP engines get setup, all copies are done via cpu memcpy. > > This means that the cpu tries to read from inaccessible memory, fails, > and the radeon module proceeds to disable acceleration. > > Doing this has no downsides, as the real VRAM size gets set as soon as the > CP engines get init. > > This is a candidate for 3.14 fixes. > > v2: Add comment on why the function is used > > Signed-off-by: Lauri Kasanen Reviewed-by: Christian K=F6nig And I suggest to add "Cc: stable@vger.kernel.org" as well. Christian. > --- > drivers/gpu/drm/radeon/radeon_ttm.c | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/drivers/gpu/drm/radeon/radeon_ttm.c b/drivers/gpu/drm/radeon= /radeon_ttm.c > index 3aa853c..b966f85 100644 > --- a/drivers/gpu/drm/radeon/radeon_ttm.c > +++ b/drivers/gpu/drm/radeon/radeon_ttm.c > @@ -715,6 +715,9 @@ int radeon_ttm_init(struct radeon_device *rdev) > DRM_ERROR("Failed initializing VRAM heap.\n"); > return r; > } > + /* Change the size here instead of the init above so only lpfn is affec= ted */ > + radeon_ttm_set_active_vram_size(rdev, rdev->mc.visible_vram_size); > + > r =3D radeon_bo_create(rdev, 256 * 1024, PAGE_SIZE, true, > RADEON_GEM_DOMAIN_VRAM, > NULL, &rdev->stollen_vga_memory);