From: Nicholas Bellinger Date: Fri, 20 May 2011 03:19:10 +0000 (-0700) Subject: target: Fix interrupt context bug with stats_lock and core_tmr_alloc_req X-Git-Tag: v2.6.39.1~94 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=26e45fbaec96c748f807925ea3855deb3c504118;p=pandora-kernel.git target: Fix interrupt context bug with stats_lock and core_tmr_alloc_req commit 53ab6709b4d35b1924240854d794482fd7d33d4a upstream. This patch fixes two bugs wrt to the interrupt context usage of target core with HW target mode drivers. It first converts the usage of struct se_device->stats_lock in transport_get_lun_for_cmd() and core_tmr_lun_reset() to properly use spin_lock_irq() to address an BUG with CONFIG_LOCKDEP_SUPPORT=y enabled. This patch also adds a 'in_interrupt()' check to allow GFP_ATOMIC usage from core_tmr_alloc_req() to fix a 'sleeping in interrupt context' BUG with HW target fabrics that require this logic to function. Signed-off-by: Nicholas Bellinger Signed-off-by: James Bottomley Signed-off-by: Greg Kroah-Hartman --- Reading git-diff-tree failed