summaryrefslogtreecommitdiffstats
path: root/drivers/gpu
diff options
context:
space:
mode:
authorJerome Glisse <jglisse@redhat.com>2009-09-09 22:23:07 +0200
committerDave Airlie <airlied@redhat.com>2009-09-10 18:41:01 +1000
commita513c184d99fe10e7b20771ef86f5f807769318f (patch)
tree140e14b22cbae3e09d6ec3644fbf48b68a83229d /drivers/gpu
parent905b68223be18937159a29b354e6a332952ff952 (diff)
downloadop-kernel-dev-a513c184d99fe10e7b20771ef86f5f807769318f.zip
op-kernel-dev-a513c184d99fe10e7b20771ef86f5f807769318f.tar.gz
drm/radeon/kms: Don't try to process irq when we are unloading
If module is being unloaded we should not try to handle irq especialy we should not call into drm helper or we could hard hang the computer free_irq will call the irq handler to make sure we behave properly. Signed-off-by: Jerome Glisse <jglisse@redhat.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers/gpu')
-rw-r--r--drivers/gpu/drm/radeon/r100.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/gpu/drm/radeon/r100.c b/drivers/gpu/drm/radeon/r100.c
index 4e1c5516..4dd5ca5 100644
--- a/drivers/gpu/drm/radeon/r100.c
+++ b/drivers/gpu/drm/radeon/r100.c
@@ -319,6 +319,9 @@ int r100_irq_process(struct radeon_device *rdev)
if (!status) {
return IRQ_NONE;
}
+ if (rdev->shutdown) {
+ return IRQ_NONE;
+ }
while (status) {
/* SW interrupt */
if (status & RADEON_SW_INT_TEST) {
OpenPOWER on IntegriCloud