[SCSI] megaraid_sas: sets ioctl timeout and updates version,changelog

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>

authored by Sumant Patro and committed by James Bottomley 2a3681e5 5d018ad0

+57 -7
+45
Documentation/scsi/ChangeLog.megaraid_sas
··· 1 1 2 + 1 Release Date : Mon Oct 02 11:21:32 PDT 2006 - Sumant Patro <Sumant.Patro@lsil.com> 3 + 2 Current Version : 00.00.03.05 4 + 3 Older Version : 00.00.03.04 5 + 6 + i. PCI_DEVICE macro used 7 + 8 + Convert the pci_device_id-table of the megaraid_sas-driver to the PCI_DEVICE-macro, to safe some lines. 9 + 10 + - Henrik Kretzschmar <henne@nachtwindheim.de> 11 + ii. All compiler warnings removed 12 + iii. megasas_ctrl_info struct reverted to 3.02 release 13 + iv. Default value of megasas_dbg_lvl set to 0 14 + v. Removing in megasas_exit the sysfs entry created for megasas_dbg_lvl 15 + vi. In megasas_teardown_frame_pool(), cmd->frame was passed instead of 16 + cmd->sense to pci_pool_free. Fixed. Bug was pointed out by 17 + Eric Sesterhenn 18 + 19 + 1 Release Date : Wed Sep 13 14:22:51 PDT 2006 - Sumant Patro <Sumant.Patro@lsil.com> 20 + 2 Current Version : 00.00.03.04 21 + 3 Older Version : 00.00.03.03 22 + 23 + i. Added Reboot notify 24 + ii. Reduced by 1 max cmds sent to FW from Driver to make the reply_q_sz same 25 + as Max Cmds FW can support 26 + 27 + 1 Release Date : Tue Aug 22 16:33:14 PDT 2006 - Sumant Patro <Sumant.Patro@lsil.com> 28 + 2 Current Version : 00.00.03.03 29 + 3 Older Version : 00.00.03.02 30 + 31 + i. Send stop adapter to FW & Dump pending FW cmds before declaring adapter dead. 32 + New varible added to set dbg level. 33 + ii. Disable interrupt made as fn pointer as they are different for 1068 / 1078 34 + iii. Frame count optimization. Main frame can contain 2 SGE for 64 bit SGLs and 35 + 3 SGE for 32 bit SGL 36 + iv. Tasklet added for cmd completion 37 + 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. 38 + vi. megasas_ctrl_prop structure updated (based on FW struct) 39 + vii. Added print : FW now in Ready State during initialization 40 + 41 + 1 Release Date : Sun Aug 06 22:49:52 PDT 2006 - Sumant Patro <Sumant.Patro@lsil.com> 42 + 2 Current Version : 00.00.03.02 43 + 3 Older Version : 00.00.03.01 44 + 45 + i. Added FW tranistion state for Hotplug scenario 46 + 2 47 1 Release Date : Sun May 14 22:49:52 PDT 2006 - Sumant Patro <Sumant.Patro@lsil.com> 3 48 2 Current Version : 00.00.03.01 4 49 3 Older Version : 00.00.02.04
+8 -4
drivers/scsi/megaraid/megaraid_sas.c
··· 10 10 * 2 of the License, or (at your option) any later version. 11 11 * 12 12 * FILE : megaraid_sas.c 13 - * Version : v00.00.03.01 13 + * Version : v00.00.03.05 14 14 * 15 15 * Authors: 16 16 * Sreenivas Bagalkote <Sreenivas.Bagalkote@lsil.com> ··· 347 347 * @cmd: Command to be issued 348 348 * 349 349 * This function waits on an event for the command to be returned from ISR. 350 + * Max wait time is MEGASAS_INTERNAL_CMD_WAIT_TIME secs 350 351 * Used to issue ioctl commands. 351 352 */ 352 353 static int ··· 358 357 359 358 instance->instancet->fire_cmd(cmd->frame_phys_addr ,0,instance->reg_set); 360 359 361 - wait_event(instance->int_cmd_wait_q, (cmd->cmd_status != ENODATA)); 360 + wait_event_timeout(instance->int_cmd_wait_q, (cmd->cmd_status != ENODATA), 361 + MEGASAS_INTERNAL_CMD_WAIT_TIME*HZ); 362 362 363 363 return 0; 364 364 } ··· 371 369 * 372 370 * MFI firmware can abort previously issued AEN comamnd (automatic event 373 371 * notification). The megasas_issue_blocked_abort_cmd() issues such abort 374 - * cmd and blocks till it is completed. 372 + * cmd and waits for return status. 373 + * Max wait time is MEGASAS_INTERNAL_CMD_WAIT_TIME secs 375 374 */ 376 375 static int 377 376 megasas_issue_blocked_abort_cmd(struct megasas_instance *instance, ··· 406 403 /* 407 404 * Wait for this cmd to complete 408 405 */ 409 - wait_event(instance->abort_cmd_wait_q, (cmd->cmd_status != 0xFF)); 406 + wait_event_timeout(instance->abort_cmd_wait_q, (cmd->cmd_status != 0xFF), 407 + MEGASAS_INTERNAL_CMD_WAIT_TIME*HZ); 410 408 411 409 megasas_return_cmd(instance, cmd); 412 410 return 0;
+4 -3
drivers/scsi/megaraid/megaraid_sas.h
··· 18 18 /** 19 19 * MegaRAID SAS Driver meta data 20 20 */ 21 - #define MEGASAS_VERSION "00.00.03.01" 22 - #define MEGASAS_RELDATE "May 14, 2006" 23 - #define MEGASAS_EXT_VERSION "Sun May 14 22:49:52 PDT 2006" 21 + #define MEGASAS_VERSION "00.00.03.05" 22 + #define MEGASAS_RELDATE "Oct 02, 2006" 23 + #define MEGASAS_EXT_VERSION "Mon Oct 02 11:21:32 PDT 2006" 24 24 25 25 /* 26 26 * Device IDs ··· 547 547 * every MEGASAS_RESET_NOTICE_INTERVAL seconds 548 548 */ 549 549 #define MEGASAS_RESET_WAIT_TIME 180 550 + #define MEGASAS_INTERNAL_CMD_WAIT_TIME 180 550 551 #define MEGASAS_RESET_NOTICE_INTERVAL 5 551 552 552 553 #define MEGASAS_IOCTL_CMD 0