[PATCH] drm/radeon: TTM must be init with cpu-visible VRAM (original) (raw)

Lauri Kasanen cand at gmx.com
Fri Feb 28 07:36:24 PST 2014


On Fri, 28 Feb 2014 17:30:39 +0200 Lauri Kasanen <cand at gmx.com> wrote:

On Fri, 28 Feb 2014 10:36:59 +0100 Christian König <deathsimple at vodafone.de> wrote:

> Am 27.02.2014 22:38, 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. > > This should be unnecessary, since TTM gets initialized only seeing the > visible VRAM and later on radeonttmsetactivevramsize gets called to > increase the limit. > > If this isn't the case any more we should figure out why instead of > working around it like this. Negative, TTM gets initialized with realvram just a few lines above this patch, not visiblevram.

git blame shows 7a50f01a from 2009, "drm/radeon/kms: vram sizing on certain r100 chips needs workaround." by Dave Airlie.

So the TTM VRAM init has been wrong for five years, and only worked by accident because until now all allocations were done bottom-up.



More information about the dri-devel mailing list