[SCSI] megaraid_sas: sets ioctl timeout and updates version,changelog
authorSumant Patro <sumantp@lsil.com>
Tue, 3 Oct 2006 20:19:21 +0000 (13:19 -0700)
committerJames Bottomley <jejb@mulgrave.il.steeleye.com>
Wed, 4 Oct 2006 17:55:29 +0000 (12:55 -0500)
This patch sets timeout of max 180 seconds for ioctl completion.
It also updates the Changelog and hikes the version to 3.05.

Signed-off-by: Sumant Patro <Sumant.Patro@lsil.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Documentation/scsi/ChangeLog.megaraid_sas
drivers/scsi/megaraid/megaraid_sas.c
drivers/scsi/megaraid/megaraid_sas.h

index d9e5960..5eb9275 100644 (file)
@@ -1,4 +1,49 @@
 
+1 Release Date    : Mon Oct 02 11:21:32 PDT 2006 - Sumant Patro <Sumant.Patro@lsil.com>
+2 Current Version : 00.00.03.05
+3 Older Version   : 00.00.03.04
+
+i.     PCI_DEVICE macro used
+
+       Convert the pci_device_id-table of the megaraid_sas-driver to the PCI_DEVICE-macro, to safe some lines.
+
+               - Henrik Kretzschmar <henne@nachtwindheim.de>
+ii.    All compiler warnings removed
+iii.   megasas_ctrl_info struct reverted to 3.02 release
+iv.    Default value of megasas_dbg_lvl set to 0
+v.     Removing in megasas_exit the sysfs entry created for megasas_dbg_lvl
+vi.    In megasas_teardown_frame_pool(), cmd->frame was passed instead of
+       cmd->sense to pci_pool_free. Fixed. Bug was pointed out by
+       Eric Sesterhenn
+
+1 Release Date    : Wed Sep 13 14:22:51 PDT 2006 - Sumant Patro <Sumant.Patro@lsil.com>
+2 Current Version : 00.00.03.04
+3 Older Version   : 00.00.03.03
+
+i.     Added Reboot notify
+ii.    Reduced by 1 max cmds sent to FW from Driver to make the reply_q_sz same
+       as Max Cmds FW can support
+
+1 Release Date    : Tue Aug 22 16:33:14 PDT 2006 - Sumant Patro <Sumant.Patro@lsil.com>
+2 Current Version : 00.00.03.03
+3 Older Version   : 00.00.03.02
+
+i.     Send stop adapter to FW & Dump pending FW cmds before declaring adapter dead.
+       New varible added to set dbg level.
+ii.    Disable interrupt made as fn pointer as they are different for 1068 / 1078
+iii.   Frame count optimization. Main frame can contain 2 SGE for 64 bit SGLs and
+       3 SGE for 32 bit SGL
+iv.    Tasklet added for cmd completion
+v.     If FW in operational state before firing INIT, now we send RESET Flag to FW instead of just READY. This is used to do soft reset.
+vi.    megasas_ctrl_prop structure updated (based on FW struct)
+vii.   Added print : FW now in Ready State during initialization
+
+1 Release Date    : Sun Aug 06 22:49:52 PDT 2006 - Sumant Patro <Sumant.Patro@lsil.com>
+2 Current Version : 00.00.03.02
+3 Older Version   : 00.00.03.01
+
+i.     Added FW tranistion state for Hotplug scenario
+
 1 Release Date    : Sun May 14 22:49:52 PDT 2006 - Sumant Patro <Sumant.Patro@lsil.com>
 2 Current Version : 00.00.03.01
 3 Older Version   : 00.00.02.04
index c730bb1..e21f638 100644 (file)
@@ -10,7 +10,7 @@
  *        2 of the License, or (at your option) any later version.
  *
  * FILE                : megaraid_sas.c
- * Version     : v00.00.03.01
+ * Version     : v00.00.03.05
  *
  * Authors:
  *     Sreenivas Bagalkote     <Sreenivas.Bagalkote@lsil.com>
@@ -347,6 +347,7 @@ megasas_issue_polled(struct megasas_instance *instance, struct megasas_cmd *cmd)
  * @cmd:                       Command to be issued
  *
  * This function waits on an event for the command to be returned from ISR.
+ * Max wait time is MEGASAS_INTERNAL_CMD_WAIT_TIME secs
  * Used to issue ioctl commands.
  */
 static int
@@ -357,7 +358,8 @@ megasas_issue_blocked_cmd(struct megasas_instance *instance,
 
        instance->instancet->fire_cmd(cmd->frame_phys_addr ,0,instance->reg_set);
 
-       wait_event(instance->int_cmd_wait_q, (cmd->cmd_status != ENODATA));
+       wait_event_timeout(instance->int_cmd_wait_q, (cmd->cmd_status != ENODATA),
+               MEGASAS_INTERNAL_CMD_WAIT_TIME*HZ);
 
        return 0;
 }
@@ -369,7 +371,8 @@ megasas_issue_blocked_cmd(struct megasas_instance *instance,
  *
  * MFI firmware can abort previously issued AEN comamnd (automatic event
  * notification). The megasas_issue_blocked_abort_cmd() issues such abort
- * cmd and blocks till it is completed.
+ * cmd and waits for return status.
+ * Max wait time is MEGASAS_INTERNAL_CMD_WAIT_TIME secs
  */
 static int
 megasas_issue_blocked_abort_cmd(struct megasas_instance *instance,
@@ -403,7 +406,8 @@ megasas_issue_blocked_abort_cmd(struct megasas_instance *instance,
        /*
         * Wait for this cmd to complete
         */
-       wait_event(instance->abort_cmd_wait_q, (cmd->cmd_status != 0xFF));
+       wait_event_timeout(instance->abort_cmd_wait_q, (cmd->cmd_status != 0xFF),
+               MEGASAS_INTERNAL_CMD_WAIT_TIME*HZ);
 
        megasas_return_cmd(instance, cmd);
        return 0;
index c79e55a..55eddcf 100644 (file)
@@ -18,9 +18,9 @@
 /**
  * MegaRAID SAS Driver meta data
  */
-#define MEGASAS_VERSION                                "00.00.03.01"
-#define MEGASAS_RELDATE                                "May 14, 2006"
-#define MEGASAS_EXT_VERSION                    "Sun May 14 22:49:52 PDT 2006"
+#define MEGASAS_VERSION                                "00.00.03.05"
+#define MEGASAS_RELDATE                                "Oct 02, 2006"
+#define MEGASAS_EXT_VERSION                    "Mon Oct 02 11:21:32 PDT 2006"
 
 /*
  * Device IDs
@@ -547,6 +547,7 @@ struct megasas_ctrl_info {
  * every MEGASAS_RESET_NOTICE_INTERVAL seconds
  */
 #define MEGASAS_RESET_WAIT_TIME                        180
+#define MEGASAS_INTERNAL_CMD_WAIT_TIME         180
 #define        MEGASAS_RESET_NOTICE_INTERVAL           5
 
 #define MEGASAS_IOCTL_CMD                      0