search for: gpu_reset

Displaying 7 results from an estimated 7 matches for "gpu_reset".

2014 Aug 04
2
[PATCH 09/19] drm/radeon: handle lockup in delayed work, v2
...mer after processing. The idea was turning the delayed work on and off when we turn the irq on and off as well, processing of the delayed work handler can still happen in radeon_fence.c > > Specifically what happened was this scenario: > > - lock up occurs > - write lock taken by gpu_reset > - delayed work runs, tries to acquire read lock, blocks > - gpu_reset tries to cancel delayed work synchronously > - has to wait for delayed work to finish -> deadlock Why do you want to disable the work item from the lockup handler in the first place? Just take the exclusive lock...
2014 Aug 04
2
[PATCH 09/19] drm/radeon: handle lockup in delayed work, v2
...as turning the delayed work on and off when we turn the irq on and off as well, processing of the delayed work handler can still happen in radeon_fence.c >> >>> Specifically what happened was this scenario: >>> >>> - lock up occurs >>> - write lock taken by gpu_reset >>> - delayed work runs, tries to acquire read lock, blocks >>> - gpu_reset tries to cancel delayed work synchronously >>> - has to wait for delayed work to finish -> deadlock >> Why do you want to disable the work item from the lockup handler in the first place?...
2014 Aug 01
2
[PATCH 09/19] drm/radeon: handle lockup in delayed work, v2
...fence, int ring); > diff --git a/drivers/gpu/drm/radeon/radeon_device.c b/drivers/gpu/drm/radeon/radeon_device.c > index 697add2cd4e3..21efd32d07ee 100644 > --- a/drivers/gpu/drm/radeon/radeon_device.c > +++ b/drivers/gpu/drm/radeon/radeon_device.c > @@ -1637,6 +1637,11 @@ int radeon_gpu_reset(struct radeon_device *rdev) > radeon_save_bios_scratch_regs(rdev); > /* block TTM */ > resched = ttm_bo_lock_delayed_workqueue(&rdev->mman.bdev); > + > + /* kill all the hangcheck tests too */ > + for (i = 0; i < RADEON_NUM_RINGS; ++i) > + radeon_fence_cance...
2014 Aug 01
0
[PATCH 09/19] drm/radeon: handle lockup in delayed work, v2
...rted/stoped. The delayed work is not just for failing irq's, it's also the handler that's used to detect lockups, which is why I trigger after processing fences, and reset the timer after processing. Specifically what happened was this scenario: - lock up occurs - write lock taken by gpu_reset - delayed work runs, tries to acquire read lock, blocks - gpu_reset tries to cancel delayed work synchronously - has to wait for delayed work to finish -> deadlock ~Maarten
2014 Aug 04
0
[PATCH 09/19] drm/radeon: handle lockup in delayed work, v2
...The idea was turning the delayed work on and off when we turn the irq on and off as well, processing of the delayed work handler can still happen in radeon_fence.c > >> >> Specifically what happened was this scenario: >> >> - lock up occurs >> - write lock taken by gpu_reset >> - delayed work runs, tries to acquire read lock, blocks >> - gpu_reset tries to cancel delayed work synchronously >> - has to wait for delayed work to finish -> deadlock > > Why do you want to disable the work item from the lockup handler in the first place? > >...
2014 Aug 04
0
[PATCH 09/19] drm/radeon: handle lockup in delayed work, v2
...ed work on and off when we turn the irq on and off as well, processing of the delayed work handler can still happen in radeon_fence.c >>> >>>> Specifically what happened was this scenario: >>>> >>>> - lock up occurs >>>> - write lock taken by gpu_reset >>>> - delayed work runs, tries to acquire read lock, blocks >>>> - gpu_reset tries to cancel delayed work synchronously >>>> - has to wait for delayed work to finish -> deadlock >>> Why do you want to disable the work item from the lockup handler in...
2014 Aug 04
2
[PATCH 09/19] drm/radeon: handle lockup in delayed work, v2
...hen we turn the irq on and off as well, processing of the delayed work handler can still happen in radeon_fence.c >>>> >>>>> Specifically what happened was this scenario: >>>>> >>>>> - lock up occurs >>>>> - write lock taken by gpu_reset >>>>> - delayed work runs, tries to acquire read lock, blocks >>>>> - gpu_reset tries to cancel delayed work synchronously >>>>> - has to wait for delayed work to finish -> deadlock >>>> Why do you want to disable the work item from the lo...