[PATCH] drm/amdgpu: refuse to reserve io mem for split VRAM buffers

Nicolai Hähnle nhaehnle at gmail.com
Mon Feb 20 17:30:21 UTC 2017


On 20.02.2017 18:29, Christian König wrote:
> Sorry, patch is Reviewed-by: Christian König <christian.koenig at amd.com>.

Thanks!

>
> Christian.
>
> Am 20.02.2017 um 18:23 schrieb Nicolai Hähnle:
>> Ping? People seem to agree, but I haven't seen an explicit R-b...
>>
>> On 16.02.2017 23:55, Nicolai Hähnle wrote:
>>> From: Nicolai Hähnle <nicolai.haehnle at amd.com>
>>>
>>> When the fast blit path fails while attempting to move a buffer from RAM
>>> to VRAM, we fall back to a CPU-based memcpy that cannot handle split
>>> VRAM
>>> buffers. Instead of crashing, simply fail the buffer move.
>>>
>>> Ideally, we would teach TTM about split buffers so that the fallback
>>> still
>>> works in this case, but that is quite involved. So for now, apply the
>>> simplest possible fix.
>>>
>>> Fixes: 40361bb1704b ("drm/amdgpu: add VRAM manager v2")
>>> Signed-off-by: Nicolai Hähnle <nicolai.haehnle at amd.com>
>>> --
>>> I ran into this bug during testing. Unfortunately it does not fix the
>>> memory corruption bug that I mentioned elsewhere... oh well.
>>> ---
>>>  drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | 3 +++
>>>  1 file changed, 3 insertions(+)
>>>
>>> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
>>> b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
>>> index 8d6a68f..f8b578d 100644
>>> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
>>> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
>>> @@ -529,6 +529,9 @@ static int amdgpu_ttm_io_mem_reserve(struct
>>> ttm_bo_device *bdev, struct ttm_mem_
>>>      case TTM_PL_TT:
>>>          break;
>>>      case TTM_PL_VRAM:
>>> +        if (mem->start == AMDGPU_BO_INVALID_OFFSET)
>>> +            return -EINVAL;
>>> +
>>>          mem->bus.offset = mem->start << PAGE_SHIFT;
>>>          /* check if it's visible */
>>>          if ((mem->bus.offset + mem->bus.size) >
>>> adev->mc.visible_vram_size)
>>>
>>
>> _______________________________________________
>> amd-gfx mailing list
>> amd-gfx at lists.freedesktop.org
>> https://lists.freedesktop.org/mailman/listinfo/amd-gfx
>
>



More information about the amd-gfx mailing list