]> git.kernelconcepts.de Git - karo-tx-linux.git/commit
iscsi-target: Avoid holding ->tpg_state_lock during param update
authorNicholas Bellinger <nab@linux-iscsi.org>
Fri, 2 Jun 2017 03:21:33 +0000 (20:21 -0700)
committerNicholas Bellinger <nab@linux-iscsi.org>
Fri, 9 Jun 2017 06:26:38 +0000 (23:26 -0700)
commiteceb4459df4a5b6127ae479280168847b9780b25
tree6b02a99d1542dac274d9ace24be1561cd719f8b4
parent9ae0e9ade56f23765366d2cfad24e65f28df977d
iscsi-target: Avoid holding ->tpg_state_lock during param update

As originally reported by Jia-Ju, iscsit_tpg_enable_portal_group()
holds iscsi_portal_group->tpg_state_lock while updating AUTHMETHOD
via iscsi_update_param_value(), which performs a GFP_KERNEL
allocation.

However, since iscsit_tpg_enable_portal_group() is already protected
by iscsit_get_tpg() -> iscsi_portal_group->tpg_access_lock in it's
parent caller, ->tpg_state_lock only needs to be held when setting
TPG_STATE_ACTIVE.

Reported-by: Jia-Ju Bai <baijiaju1990@163.com>
Reviewed-by: Jia-Ju Bai <baijiaju1990@163.com>
Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
drivers/target/iscsi/iscsi_target_tpg.c