From bca585b02f09e27d7adef8375630515711bd4802 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Christian=20K=C3=B6nig?= Date: Wed, 28 Feb 2018 15:39:46 +0100 Subject: [PATCH] amdgpu: fix "add AMDGPU_VA_RANGE_HIGH" MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The range is stored as exclusive, not inclusive. Subtracts one to get the inclusive interval for the calculation. This fixes crashes when 32bit addresses are in use. Signed-off-by: Christian König Reviewed-and-Tested-by: Michel Dänzer --- amdgpu/amdgpu_device.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/amdgpu/amdgpu_device.c b/amdgpu/amdgpu_device.c index 9ff6ad16..fb2cfb57 100644 --- a/amdgpu/amdgpu_device.c +++ b/amdgpu/amdgpu_device.c @@ -323,9 +323,9 @@ int amdgpu_query_sw_info(amdgpu_device_handle dev, enum amdgpu_sw_info info, switch (info) { case amdgpu_sw_info_address32_hi: if (dev->vamgr_high_32.va_max) - *val32 = dev->vamgr_high_32.va_max >> 32; + *val32 = (dev->vamgr_high_32.va_max - 1) >> 32; else - *val32 = dev->vamgr_32.va_max >> 32; + *val32 = (dev->vamgr_32.va_max - 1) >> 32; return 0; } return -EINVAL;