diff options
author | Nicholas Bellinger <nab@linux-iscsi.org> | 2011-11-12 03:32:17 -0500 |
---|---|---|
committer | Nicholas Bellinger <nab@linux-iscsi.org> | 2011-12-14 06:38:29 -0500 |
commit | 7481deb413be132a22193e8a0bce88b311ecb3c2 (patch) | |
tree | 6d417c6856f983cb28fae0717563f4efcd6019e1 /include/target | |
parent | ce136176fea522fc8f4c16dcae7e8ed1d890ca39 (diff) |
target: Make target_put_sess_cmd use target_release_cmd_kref
This patch moves target_put_sess_cmd() to use a se_cmd->cmd_kref
callback target_release_cmd_kref when performing driver release of
fabric->se_cmd descriptor memory. It sets the default cmd_kref
count value to '2' within target_get_sess_cmd() setup, and
currently assumes TFO->check_stop_free() usage.
It drops se_tfo->check_release_cmd() usage in the main
transport_release_cmd codepath.
Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
Diffstat (limited to 'include/target')
-rw-r--r-- | include/target/target_core_base.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/include/target/target_core_base.h b/include/target/target_core_base.h index cadd4f6e57e1..af088a9e4905 100644 --- a/include/target/target_core_base.h +++ b/include/target/target_core_base.h | |||
@@ -541,6 +541,7 @@ struct se_cmd { | |||
541 | struct list_head se_queue_node; | 541 | struct list_head se_queue_node; |
542 | struct list_head se_cmd_list; | 542 | struct list_head se_cmd_list; |
543 | struct completion cmd_wait_comp; | 543 | struct completion cmd_wait_comp; |
544 | struct kref cmd_kref; | ||
544 | struct target_core_fabric_ops *se_tfo; | 545 | struct target_core_fabric_ops *se_tfo; |
545 | int (*execute_task)(struct se_task *); | 546 | int (*execute_task)(struct se_task *); |
546 | void (*transport_complete_callback)(struct se_cmd *); | 547 | void (*transport_complete_callback)(struct se_cmd *); |