From: Christian Koenig Date: Wed, 16 May 2012 23:33:30 +0000 (+0200) Subject: drm/radeon: apply Murphy's law to the kms irq code v3 X-Git-Tag: v3.6-rc1~83^2~44^2~2 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=fb98257a9d9d2089972b18079d5bdd4412e107e2;p=pandora-kernel.git drm/radeon: apply Murphy's law to the kms irq code v3 1. It is really dangerous to have more than one spinlock protecting the same information. 2. radeon_irq_set sometimes wasn't called with lock protection, so it can happen that more than one CPU would tamper with the irq regs at the same time. 3. The pm.gui_idle variable was assuming that the 3D engine wasn't becoming idle between testing the register and setting the variable. So just remove it and test the register directly. v2: Also handle the hpd irq code the same way. v3: Rename hpd parameter for clarification. Signed-off-by: Christian Koenig Reviewed-by: Alex Deucher --- Reading git-diff-tree failed