OSDN Git Service

drm/amdgpu: use WARN_ON_ONCE instead of BUG_ON in the SA
authorChristian König <christian.koenig@amd.com>
Mon, 25 Jan 2016 12:01:42 +0000 (13:01 +0100)
committerAlex Deucher <alexander.deucher@amd.com>
Wed, 10 Feb 2016 19:17:03 +0000 (14:17 -0500)
Crashing the system doesn't helps at all. Also properly return
-EINVAL if size or alignment are outside valid ranges.

Signed-off-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/amdgpu_sa.c

index 8b88edb..7d8f8f1 100644 (file)
@@ -321,8 +321,11 @@ int amdgpu_sa_bo_new(struct amdgpu_sa_manager *sa_manager,
        int i, r;
        signed long t;
 
-       BUG_ON(align > sa_manager->align);
-       BUG_ON(size > sa_manager->size);
+       if (WARN_ON_ONCE(align > sa_manager->align))
+               return -EINVAL;
+
+       if (WARN_ON_ONCE(size > sa_manager->size))
+               return -EINVAL;
 
        *sa_bo = kmalloc(sizeof(struct amdgpu_sa_bo), GFP_KERNEL);
        if ((*sa_bo) == NULL) {