diff options
author | Christian König <christian.koenig@amd.com> | 2017-05-08 09:14:54 -0400 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2017-05-24 17:40:34 -0400 |
commit | a022c54e60222fa192004ed951a658cba7262784 (patch) | |
tree | 7a0b268fa58f4f0d704a7ee5bc208b9865ab42d4 /drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c | |
parent | 6643be65d9e3e76960119957e5ad1acecb0b8dc0 (diff) |
drm/amdgpu: remove unsed amdgpu_gem_handle_lockup (v2)
This kind of reset handling was removed a long time ago.
v2: fix warning (Alex)
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>
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c')
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c | 46 |
1 files changed, 11 insertions, 35 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c index 94cb91cf93eb..92e9248ea8b1 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c | |||
@@ -219,16 +219,6 @@ void amdgpu_gem_object_close(struct drm_gem_object *obj, | |||
219 | ttm_eu_backoff_reservation(&ticket, &list); | 219 | ttm_eu_backoff_reservation(&ticket, &list); |
220 | } | 220 | } |
221 | 221 | ||
222 | static int amdgpu_gem_handle_lockup(struct amdgpu_device *adev, int r) | ||
223 | { | ||
224 | if (r == -EDEADLK) { | ||
225 | r = amdgpu_gpu_reset(adev); | ||
226 | if (!r) | ||
227 | r = -EAGAIN; | ||
228 | } | ||
229 | return r; | ||
230 | } | ||
231 | |||
232 | /* | 222 | /* |
233 | * GEM ioctls. | 223 | * GEM ioctls. |
234 | */ | 224 | */ |
@@ -249,20 +239,17 @@ int amdgpu_gem_create_ioctl(struct drm_device *dev, void *data, | |||
249 | AMDGPU_GEM_CREATE_CPU_GTT_USWC | | 239 | AMDGPU_GEM_CREATE_CPU_GTT_USWC | |
250 | AMDGPU_GEM_CREATE_VRAM_CLEARED| | 240 | AMDGPU_GEM_CREATE_VRAM_CLEARED| |
251 | AMDGPU_GEM_CREATE_SHADOW | | 241 | AMDGPU_GEM_CREATE_SHADOW | |
252 | AMDGPU_GEM_CREATE_VRAM_CONTIGUOUS)) { | 242 | AMDGPU_GEM_CREATE_VRAM_CONTIGUOUS)) |
253 | r = -EINVAL; | 243 | return -EINVAL; |
254 | goto error_unlock; | 244 | |
255 | } | ||
256 | /* reject invalid gem domains */ | 245 | /* reject invalid gem domains */ |
257 | if (args->in.domains & ~(AMDGPU_GEM_DOMAIN_CPU | | 246 | if (args->in.domains & ~(AMDGPU_GEM_DOMAIN_CPU | |
258 | AMDGPU_GEM_DOMAIN_GTT | | 247 | AMDGPU_GEM_DOMAIN_GTT | |
259 | AMDGPU_GEM_DOMAIN_VRAM | | 248 | AMDGPU_GEM_DOMAIN_VRAM | |
260 | AMDGPU_GEM_DOMAIN_GDS | | 249 | AMDGPU_GEM_DOMAIN_GDS | |
261 | AMDGPU_GEM_DOMAIN_GWS | | 250 | AMDGPU_GEM_DOMAIN_GWS | |
262 | AMDGPU_GEM_DOMAIN_OA)) { | 251 | AMDGPU_GEM_DOMAIN_OA)) |
263 | r = -EINVAL; | 252 | return -EINVAL; |
264 | goto error_unlock; | ||
265 | } | ||
266 | 253 | ||
267 | /* create a gem object to contain this object in */ | 254 | /* create a gem object to contain this object in */ |
268 | if (args->in.domains & (AMDGPU_GEM_DOMAIN_GDS | | 255 | if (args->in.domains & (AMDGPU_GEM_DOMAIN_GDS | |
@@ -274,10 +261,8 @@ int amdgpu_gem_create_ioctl(struct drm_device *dev, void *data, | |||
274 | size = size << AMDGPU_GWS_SHIFT; | 261 | size = size << AMDGPU_GWS_SHIFT; |
275 | else if (args->in.domains == AMDGPU_GEM_DOMAIN_OA) | 262 | else if (args->in.domains == AMDGPU_GEM_DOMAIN_OA) |
276 | size = size << AMDGPU_OA_SHIFT; | 263 | size = size << AMDGPU_OA_SHIFT; |
277 | else { | 264 | else |
278 | r = -EINVAL; | 265 | return -EINVAL; |
279 | goto error_unlock; | ||
280 | } | ||
281 | } | 266 | } |
282 | size = roundup(size, PAGE_SIZE); | 267 | size = roundup(size, PAGE_SIZE); |
283 | 268 | ||
@@ -286,21 +271,17 @@ int amdgpu_gem_create_ioctl(struct drm_device *dev, void *data, | |||
286 | args->in.domain_flags, | 271 | args->in.domain_flags, |
287 | kernel, &gobj); | 272 | kernel, &gobj); |
288 | if (r) | 273 | if (r) |
289 | goto error_unlock; | 274 | return r; |
290 | 275 | ||
291 | r = drm_gem_handle_create(filp, gobj, &handle); | 276 | r = drm_gem_handle_create(filp, gobj, &handle); |
292 | /* drop reference from allocate - handle holds it now */ | 277 | /* drop reference from allocate - handle holds it now */ |
293 | drm_gem_object_unreference_unlocked(gobj); | 278 | drm_gem_object_unreference_unlocked(gobj); |
294 | if (r) | 279 | if (r) |
295 | goto error_unlock; | 280 | return r; |
296 | 281 | ||
297 | memset(args, 0, sizeof(*args)); | 282 | memset(args, 0, sizeof(*args)); |
298 | args->out.handle = handle; | 283 | args->out.handle = handle; |
299 | return 0; | 284 | return 0; |
300 | |||
301 | error_unlock: | ||
302 | r = amdgpu_gem_handle_lockup(adev, r); | ||
303 | return r; | ||
304 | } | 285 | } |
305 | 286 | ||
306 | int amdgpu_gem_userptr_ioctl(struct drm_device *dev, void *data, | 287 | int amdgpu_gem_userptr_ioctl(struct drm_device *dev, void *data, |
@@ -334,7 +315,7 @@ int amdgpu_gem_userptr_ioctl(struct drm_device *dev, void *data, | |||
334 | AMDGPU_GEM_DOMAIN_CPU, 0, | 315 | AMDGPU_GEM_DOMAIN_CPU, 0, |
335 | 0, &gobj); | 316 | 0, &gobj); |
336 | if (r) | 317 | if (r) |
337 | goto handle_lockup; | 318 | return r; |
338 | 319 | ||
339 | bo = gem_to_amdgpu_bo(gobj); | 320 | bo = gem_to_amdgpu_bo(gobj); |
340 | bo->prefered_domains = AMDGPU_GEM_DOMAIN_GTT; | 321 | bo->prefered_domains = AMDGPU_GEM_DOMAIN_GTT; |
@@ -374,7 +355,7 @@ int amdgpu_gem_userptr_ioctl(struct drm_device *dev, void *data, | |||
374 | /* drop reference from allocate - handle holds it now */ | 355 | /* drop reference from allocate - handle holds it now */ |
375 | drm_gem_object_unreference_unlocked(gobj); | 356 | drm_gem_object_unreference_unlocked(gobj); |
376 | if (r) | 357 | if (r) |
377 | goto handle_lockup; | 358 | return r; |
378 | 359 | ||
379 | args->handle = handle; | 360 | args->handle = handle; |
380 | return 0; | 361 | return 0; |
@@ -388,9 +369,6 @@ unlock_mmap_sem: | |||
388 | release_object: | 369 | release_object: |
389 | drm_gem_object_unreference_unlocked(gobj); | 370 | drm_gem_object_unreference_unlocked(gobj); |
390 | 371 | ||
391 | handle_lockup: | ||
392 | r = amdgpu_gem_handle_lockup(adev, r); | ||
393 | |||
394 | return r; | 372 | return r; |
395 | } | 373 | } |
396 | 374 | ||
@@ -456,7 +434,6 @@ unsigned long amdgpu_gem_timeout(uint64_t timeout_ns) | |||
456 | int amdgpu_gem_wait_idle_ioctl(struct drm_device *dev, void *data, | 434 | int amdgpu_gem_wait_idle_ioctl(struct drm_device *dev, void *data, |
457 | struct drm_file *filp) | 435 | struct drm_file *filp) |
458 | { | 436 | { |
459 | struct amdgpu_device *adev = dev->dev_private; | ||
460 | union drm_amdgpu_gem_wait_idle *args = data; | 437 | union drm_amdgpu_gem_wait_idle *args = data; |
461 | struct drm_gem_object *gobj; | 438 | struct drm_gem_object *gobj; |
462 | struct amdgpu_bo *robj; | 439 | struct amdgpu_bo *robj; |
@@ -484,7 +461,6 @@ int amdgpu_gem_wait_idle_ioctl(struct drm_device *dev, void *data, | |||
484 | r = ret; | 461 | r = ret; |
485 | 462 | ||
486 | drm_gem_object_unreference_unlocked(gobj); | 463 | drm_gem_object_unreference_unlocked(gobj); |
487 | r = amdgpu_gem_handle_lockup(adev, r); | ||
488 | return r; | 464 | return r; |
489 | } | 465 | } |
490 | 466 | ||