Re: [PATCH] drm/radeon: TTM must be init with cpu-visible VRAM

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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 radeon_ttm_set_active_vram_size 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.

Christian.


Signed-off-by: Lauri Kasanen <cand@xxxxxxx>
---
  drivers/gpu/drm/radeon/radeon_ttm.c | 2 ++
  1 file changed, 2 insertions(+)

diff --git a/drivers/gpu/drm/radeon/radeon_ttm.c b/drivers/gpu/drm/radeon/radeon_ttm.c
index 3aa853c..35eae91 100644
--- a/drivers/gpu/drm/radeon/radeon_ttm.c
+++ b/drivers/gpu/drm/radeon/radeon_ttm.c
@@ -715,6 +715,8 @@ int radeon_ttm_init(struct radeon_device *rdev)
  		DRM_ERROR("Failed initializing VRAM heap.\n");
  		return r;
  	}
+	radeon_ttm_set_active_vram_size(rdev, rdev->mc.visible_vram_size);
+
  	r = radeon_bo_create(rdev, 256 * 1024, PAGE_SIZE, true,
  			     RADEON_GEM_DOMAIN_VRAM,
  			     NULL, &rdev->stollen_vga_memory);

_______________________________________________
dri-devel mailing list
dri-devel@xxxxxxxxxxxxxxxxxxxxx
http://lists.freedesktop.org/mailman/listinfo/dri-devel




[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux