[stgt] [PATCH 1/2] Implement smc INITIALIZE ELEMENT STATUS

Mark Harvey markh794 at gmail.com
Tue Aug 19 01:46:33 CEST 2008


>From cd879265ea4c2e9fdcbd275cad5ad3362571de84 Mon Sep 17 00:00:00 2001
From: Mark Harvey <markh794 at gmail.com>
Date: Tue, 19 Aug 2008 09:31:22 +1000
Subject: Implement smc INITIALIZE ELEMENT STATUS op code as NO-OP

Re-submit Richard Sharpe's patch in git format

Reported-by: Richard Sharpe <realrichardsharpe at gmail.com>
Signed-off-by: Mark Harvey <markh794 at gmail.com>
---
 usr/smc.c |   19 ++++++++++++++++++-
 1 files changed, 18 insertions(+), 1 deletions(-)

diff --git a/usr/smc.c b/usr/smc.c
index 9d7f681..a04e905 100644
--- a/usr/smc.c
+++ b/usr/smc.c
@@ -225,6 +225,23 @@ static int build_element_descriptors(uint8_t *data, struct list_head *head,
 }
 
 /**
+ * smc_initialize_element_status - INITIALIZE ELEMENT STATUS op code
+ *
+ * Some backup libraries seem to require this.
+ *
+ * Support the SCSI op code INITIALIZE_ELEMENT_STATUS
+ * Ref: smc3r10a, 6.2
+ */
+static int smc_initialize_element_status(int host_no, struct scsi_cmd *cmd)
+{
+	/*
+	 * Should do some error checking here ... the spec says some stuff
+	 * about having a reservation
+	 */
+	return SAM_STAT_GOOD;
+}
+
+/**
  * smc_read_element_status  -  READ ELEMENT STATUS op code
  *
  * Support the SCSI op code READ ELEMENT STATUS
@@ -748,7 +765,7 @@ struct device_type_template smc_template = {
 		{spc_illegal_op,},
 		{spc_illegal_op,},
 		{spc_illegal_op,},
-		{spc_illegal_op,},
+		{smc_initialize_element_status,},
 
 		{spc_illegal_op,},
 		{spc_illegal_op,},
-- 
1.5.4.3

--
To unsubscribe from this list: send the line "unsubscribe stgt" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html



More information about the stgt mailing list