aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/target
diff options
context:
space:
mode:
authorNicholas Bellinger <nab@linux-iscsi.org>2012-02-10 19:18:11 -0500
committerNicholas Bellinger <nab@linux-iscsi.org>2012-02-25 17:37:48 -0500
commit2fbff1276bb635294b3384b6c167f72d0acdab95 (patch)
treed480bcaff6665583ff5f8120cc81754a8f3651b0 /drivers/target
parenta1edf9cf6d1efed2981fcf6e4caa704fbb1bd093 (diff)
target: Export transport_generic_request_failure symbol
transport_generic_request_failure() is a wrapper around calling transport_send_check_condition_and_sense() that is required once an se_cmd->cmd_kref has been obtained via target_submit_cmd() -> target_get_sess_cmd(). tcm_qla2xxx currently requires this, and since it's necessary for other callers using target_submit_cmd() make it exportable now. Reported-by: Roland Dreier <roland@purestorage.com> Cc: Christoph Hellwig <hch@lst.de> Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
Diffstat (limited to 'drivers/target')
-rw-r--r--drivers/target/target_core_transport.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/target/target_core_transport.c b/drivers/target/target_core_transport.c
index 1520dd2dd718..35bae7dd670a 100644
--- a/drivers/target/target_core_transport.c
+++ b/drivers/target/target_core_transport.c
@@ -76,7 +76,6 @@ static int transport_generic_get_mem(struct se_cmd *cmd);
76static void transport_put_cmd(struct se_cmd *cmd); 76static void transport_put_cmd(struct se_cmd *cmd);
77static void transport_remove_cmd_from_queue(struct se_cmd *cmd); 77static void transport_remove_cmd_from_queue(struct se_cmd *cmd);
78static int transport_set_sense_codes(struct se_cmd *cmd, u8 asc, u8 ascq); 78static int transport_set_sense_codes(struct se_cmd *cmd, u8 asc, u8 ascq);
79static void transport_generic_request_failure(struct se_cmd *);
80static void target_complete_ok_work(struct work_struct *work); 79static void target_complete_ok_work(struct work_struct *work);
81 80
82int init_se_kmem_caches(void) 81int init_se_kmem_caches(void)
@@ -1866,7 +1865,7 @@ static int transport_stop_tasks_for_cmd(struct se_cmd *cmd)
1866/* 1865/*
1867 * Handle SAM-esque emulation for generic transport request failures. 1866 * Handle SAM-esque emulation for generic transport request failures.
1868 */ 1867 */
1869static void transport_generic_request_failure(struct se_cmd *cmd) 1868void transport_generic_request_failure(struct se_cmd *cmd)
1870{ 1869{
1871 int ret = 0; 1870 int ret = 0;
1872 1871
@@ -1958,6 +1957,7 @@ queue_full:
1958 cmd->t_state = TRANSPORT_COMPLETE_QF_OK; 1957 cmd->t_state = TRANSPORT_COMPLETE_QF_OK;
1959 transport_handle_queue_full(cmd, cmd->se_dev); 1958 transport_handle_queue_full(cmd, cmd->se_dev);
1960} 1959}
1960EXPORT_SYMBOL(transport_generic_request_failure);
1961 1961
1962static inline u32 transport_lba_21(unsigned char *cdb) 1962static inline u32 transport_lba_21(unsigned char *cdb)
1963{ 1963{