From: "Nicholas A. Bellinger" <nab@linux-iscsi.org>
To: linux-scsi <linux-scsi@vger.kernel.org>,
linux-kernel <linux-kernel@vger.kernel.org>,
James Bottomley <James.Bottomley@HansenPartnership.com>
Cc: Christoph Hellwig <hch@lst.de>,
Mike Christie <michaelc@cs.wisc.edu>,
Hannes Reinecke <hare@suse.de>,
FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>,
Boaz Harrosh <bharrosh@panasas.com>,
Joel Becker <jlbec@evilplan.org>,
Stephen Rothwell <sfr@canb.auug.org.au>,
Douglas Gilbert <dgilbert@interlog.com>,
Nicholas Bellinger <nab@linux-iscsi.org>
Subject: [PATCH 10/21] target: Convert TMR REQ/RSP definitions to target namespace
Date: Mon, 14 Mar 2011 04:06:04 -0700 [thread overview]
Message-ID: <1300100775-10012-11-git-send-email-nab@linux-iscsi.org> (raw)
In-Reply-To: <1300100775-10012-1-git-send-email-nab@linux-iscsi.org>
From: Nicholas Bellinger <nab@linux-iscsi.org>
This patch changes include/target/target_core_tmr.h code to use
target specific 'TMR_*' prefixed definitions for fabric independent
SCSI Task Management Request/Request naming in include/scsi/scsi.h
definitions for mainline target code.
Signed-off-by: Nicholas A. Bellinger <nab@linux-iscsi.org>
---
drivers/target/target_core_transport.c | 19 ++++-------
include/target/target_core_tmr.h | 52 +++++++++++++------------------
2 files changed, 29 insertions(+), 42 deletions(-)
diff --git a/drivers/target/target_core_transport.c b/drivers/target/target_core_transport.c
index 8392b26..30c1223 100644
--- a/drivers/target/target_core_transport.c
+++ b/drivers/target/target_core_transport.c
@@ -5832,31 +5832,26 @@ int transport_generic_do_tmr(struct se_cmd *cmd)
int ret;
switch (tmr->function) {
- case ABORT_TASK:
+ case TMR_ABORT_TASK:
ref_cmd = tmr->ref_cmd;
tmr->response = TMR_FUNCTION_REJECTED;
break;
- case ABORT_TASK_SET:
- case CLEAR_ACA:
- case CLEAR_TASK_SET:
+ case TMR_ABORT_TASK_SET:
+ case TMR_CLEAR_ACA:
+ case TMR_CLEAR_TASK_SET:
tmr->response = TMR_TASK_MGMT_FUNCTION_NOT_SUPPORTED;
break;
- case LUN_RESET:
+ case TMR_LUN_RESET:
ret = core_tmr_lun_reset(dev, tmr, NULL, NULL);
tmr->response = (!ret) ? TMR_FUNCTION_COMPLETE :
TMR_FUNCTION_REJECTED;
break;
-#if 0
- case TARGET_WARM_RESET:
- transport_generic_host_reset(dev->se_hba);
+ case TMR_TARGET_WARM_RESET:
tmr->response = TMR_FUNCTION_REJECTED;
break;
- case TARGET_COLD_RESET:
- transport_generic_host_reset(dev->se_hba);
- transport_generic_cold_reset(dev->se_hba);
+ case TMR_TARGET_COLD_RESET:
tmr->response = TMR_FUNCTION_REJECTED;
break;
-#endif
default:
printk(KERN_ERR "Uknown TMR function: 0x%02x.\n",
tmr->function);
diff --git a/include/target/target_core_tmr.h b/include/target/target_core_tmr.h
index 6c8248b..bd55968 100644
--- a/include/target/target_core_tmr.h
+++ b/include/target/target_core_tmr.h
@@ -1,37 +1,29 @@
#ifndef TARGET_CORE_TMR_H
#define TARGET_CORE_TMR_H
-/* task management function values */
-#ifdef ABORT_TASK
-#undef ABORT_TASK
-#endif /* ABORT_TASK */
-#define ABORT_TASK 1
-#ifdef ABORT_TASK_SET
-#undef ABORT_TASK_SET
-#endif /* ABORT_TASK_SET */
-#define ABORT_TASK_SET 2
-#ifdef CLEAR_ACA
-#undef CLEAR_ACA
-#endif /* CLEAR_ACA */
-#define CLEAR_ACA 3
-#ifdef CLEAR_TASK_SET
-#undef CLEAR_TASK_SET
-#endif /* CLEAR_TASK_SET */
-#define CLEAR_TASK_SET 4
-#define LUN_RESET 5
-#define TARGET_WARM_RESET 6
-#define TARGET_COLD_RESET 7
-#define TASK_REASSIGN 8
+/* fabric independent task management function values */
+enum tcm_tmreq_table {
+ TMR_ABORT_TASK = 1,
+ TMR_ABORT_TASK_SET = 2,
+ TMR_CLEAR_ACA = 3,
+ TMR_CLEAR_TASK_SET = 4,
+ TMR_LUN_RESET = 5,
+ TMR_TARGET_WARM_RESET = 6,
+ TMR_TARGET_COLD_RESET = 7,
+ TMR_FABRIC_TMR = 255,
+};
-/* task management response values */
-#define TMR_FUNCTION_COMPLETE 0
-#define TMR_TASK_DOES_NOT_EXIST 1
-#define TMR_LUN_DOES_NOT_EXIST 2
-#define TMR_TASK_STILL_ALLEGIANT 3
-#define TMR_TASK_FAILOVER_NOT_SUPPORTED 4
-#define TMR_TASK_MGMT_FUNCTION_NOT_SUPPORTED 5
-#define TMR_FUNCTION_AUTHORIZATION_FAILED 6
-#define TMR_FUNCTION_REJECTED 255
+/* fabric independent task management response values */
+enum tcm_tmrsp_table {
+ TMR_FUNCTION_COMPLETE = 0,
+ TMR_TASK_DOES_NOT_EXIST = 1,
+ TMR_LUN_DOES_NOT_EXIST = 2,
+ TMR_TASK_STILL_ALLEGIANT = 3,
+ TMR_TASK_FAILOVER_NOT_SUPPORTED = 4,
+ TMR_TASK_MGMT_FUNCTION_NOT_SUPPORTED = 5,
+ TMR_FUNCTION_AUTHORIZATION_FAILED = 6,
+ TMR_FUNCTION_REJECTED = 255,
+};
extern struct kmem_cache *se_tmr_req_cache;
--
1.7.4.1
next prev parent reply other threads:[~2011-03-14 11:06 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-03-14 11:05 [PATCH 00/21] target patches for .39 scsi-misc (v3) Nicholas A. Bellinger
2011-03-14 11:05 ` [PATCH 01/21] target: Fix memory leak on error path in pscsi_alloc_task Nicholas A. Bellinger
2011-03-14 11:05 ` [PATCH 02/21] target: Fix match_strdup() memory leaks Nicholas A. Bellinger
2011-03-14 11:05 ` [PATCH 03/21] target: tcm_mod_builder.py generated Makefile cleanups Nicholas A. Bellinger
2011-03-14 11:05 ` [PATCH 04/21] target: remove EXTRA_CFLAGS Nicholas A. Bellinger
2011-03-14 11:05 ` [PATCH 05/21] target: Convert backend ->create_virtdevice() call to return ERR_PTR Nicholas A. Bellinger
2011-03-14 11:06 ` [PATCH 06/21] target: Remove unnecessary hba_dev_list walk and se_clear_dev_ports legacy code Nicholas A. Bellinger
2011-03-14 11:06 ` [PATCH 07/21] target: Minor sparse warning fixes and annotations Nicholas A. Bellinger
2011-03-14 11:06 ` [PATCH 08/21] target: Remove spurious double cast from structure macro accessors Nicholas A. Bellinger
2011-03-14 11:06 ` [PATCH 09/21] target: Convert rd_build_device_space() to use errno Nicholas A. Bellinger
2011-03-14 11:06 ` Nicholas A. Bellinger [this message]
2011-03-14 11:06 ` [PATCH 11/21] target: Avoid mem leak and needless work in transport_generic_get_mem Nicholas A. Bellinger
2011-03-14 11:06 ` [PATCH 12/21] target: Fix bogus return in transport_add_device_to_core_hba failure path Nicholas A. Bellinger
2011-03-14 11:06 ` [PATCH 13/21] target: Fix generated *_drop_nodeacl() handler in tcm_mod_builder.py Nicholas A. Bellinger
2011-03-14 11:06 ` [PATCH 14/21] target: Fix FILEIO fd_buffered_io= token typo Nicholas A. Bellinger
2011-03-14 11:06 ` [PATCH 15/21] target: Add __init/__exit annotation for target_core_[init,exit]_configfs Nicholas A. Bellinger
2011-03-14 11:06 ` [PATCH 16/21] target core v4.0.0-rc7-ml Nicholas A. Bellinger
2011-03-14 11:06 ` [PATCH 17/21] target: add initial device backend context target_core_stat.c code Nicholas A. Bellinger
2011-03-14 11:06 ` [PATCH 18/21] target: add initial fabric port " Nicholas A. Bellinger
2011-03-14 11:06 ` [PATCH 19/21] target: add initial fabric MappedLUN " Nicholas A. Bellinger
2011-03-14 11:06 ` [PATCH 20/21] target: Add fabric_stat_group for fabric module statistics default_group Nicholas A. Bellinger
2011-03-14 11:06 ` [PATCH 21/21] tcm_loop: Add multi-fabric Linux/SCSI LLD fabric module Nicholas A. Bellinger
2011-03-14 14:58 ` Christoph Hellwig
2011-03-14 22:02 ` Nicholas A. Bellinger
2011-03-15 10:18 ` Christoph Hellwig
2011-03-17 0:50 ` Nicholas A. Bellinger
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1300100775-10012-11-git-send-email-nab@linux-iscsi.org \
--to=nab@linux-iscsi.org \
--cc=James.Bottomley@HansenPartnership.com \
--cc=bharrosh@panasas.com \
--cc=dgilbert@interlog.com \
--cc=fujita.tomonori@lab.ntt.co.jp \
--cc=hare@suse.de \
--cc=hch@lst.de \
--cc=jlbec@evilplan.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-scsi@vger.kernel.org \
--cc=michaelc@cs.wisc.edu \
--cc=sfr@canb.auug.org.au \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).