- 11 4月, 2010 40 次提交
-
-
由 Jing Huang 提交于
sg address in IO request is not set up correctly for big endian platform. add new macros to properly swap the address. Signed-off-by: NJing Huang <huangj@brocade.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Jing Huang 提交于
idr is a global resource, protect it with global bfad_mutex. Signed-off-by: NJing Huang <huangj@brocade.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Jing Huang 提交于
Use pci_iomap() and pci_iounmap() to simplify the code. Remove uncessary #ifdef check for ia64 (it was added as a workaound for some RHEL 5.x release which doesn't export iounmap function) Signed-off-by: NJing Huang <huangj@brocade.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Jing Huang 提交于
Currently the driver doesn't take into consideraion of possible sg chaining when it walks through the sg list. This is fixed by using the sg_next() which automatically handles the chaining case. Obosolete code is removed as a result of this change. Signed-off-by: NJing Huang <huangj@brocade.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Jing Huang 提交于
Use duplicate fc transport template for physical and vitual port. Add vport create/delete/disalbe functions in the transport template of physical port. Changes to make the vport create/delete function to work under this framework. Signed-off-by: NJing Huang <huangj@brocade.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Alan Stern 提交于
This patch (as1359) fixes a bug in scsi_alloc_target(). After a device structure has been initialized (and especially after its name has been set), it must not be freed directly. One has to call put_device() instead. Signed-off-by: NAlan Stern <stern@rowland.harvard.edu> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Alan Stern 提交于
This patch (as1358) fixes a bug in the error pathway of scsi_target_add(). If registration fails, the target should not be reaped. The reaping occurs later, when scanning is finished and all the child devices are removed. The current code leaves an unbalanced value in starget->reap_ref. Signed-off-by: NAlan Stern <stern@rowland.harvard.edu> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Kashyap, Desai 提交于
Upgrade version from 3.04.14 to 3.04.15 Signed-off-by: NKashyap Desai <kashyap.desai@lsi.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Kashyap, Desai 提交于
Added proper error handling after mpt_config. Now check of MPI_IOCSTATUS_CONFIG_INVALID_PAGE is added. If error is MPI_IOCSTATUS_CONFIG_INVALID_PAGE, driver will return -ENODEV. Signed-off-by: NKashyap Desai <kashyap.desai@lsi.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Kashyap, Desai 提交于
event_data needs to be 4 byte aligned to makes sure there is no unaligned memory access take place. Signed-off-by: NKashyap Desai <kashyap.desai@lsi.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Kashyap, Desai 提交于
1) Corrected name string as "MPT SAS HOST" 2) Added proper check conditions for MPT_MGMT_STATUS_COMMAND_GOOD. Signed-off-by: NKashyap Desai <kashyap.desai@lsi.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Kashyap, Desai 提交于
1) corrected return value as SUCCESS instead of 0. 2) Added check in mptscsih_abort. mptfusion do not support task abort for Volumes. Signed-off-by: NKashyap Desai <kashyap.desai@lsi.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Kashyap, Desai 提交于
Added sanity checks before accessing vdevice and added vdevice->deleted setting for mptfc. Signed-off-by: NKashyap Desai <kashyap.desai@lsi.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Kashyap, Desai 提交于
Set factor, offset and width while target negotiation. Added config timeout 60 seconds. It was missing for only mptspi_read_spi_device_pg0 Signed-off-by: NKashyap Desai <kashyap.desai@lsi.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Kashyap, Desai 提交于
Added proper bus_type check before processing event/ reset handler. Signed-off-by: NKashyap Desai <kashyap.desai@lsi.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Kashyap, Desai 提交于
Current design of mptsas is as follow. MPTSAS will do probe() if pci id matches for available card in system, irrespective of mode of controller. If controller is I/T mode or I mode, things are fine. If controller is only in T mode, mptsas is not doing complete process of mptsas_probe(). It will only make sure IOC structure is created and IOC reference is available for mptstm driver. Now While removing module we should take care case of Target mode only mptsas. If we are removing IOC which is only in Target mode, We should only detach IOC instead of following rest of the cleanup process which is only required for T mode controller. Now For T mode controller, only part clean up is done instead of complete cleanup. mpt_detach will call early in case of Target mode only controller. Signed-off-by: NKashyap Desai <kashyap.desai@lsi.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Kashyap, Desai 提交于
mpt_config would only attempt a MUR before retrying the command. The driver will now retry a second time with a hard reset before leaving the function. Signed-off-by: NKashyap Desai <kashyap.desai@lsi.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Kashyap, Desai 提交于
Behavior changes only for IOCTLs that time out. Current behavior of Bus Reset remains the same for RAID Passthru Timeouts Current behavior of Diagnostic reset for any other type of IOCTL remains the same CHANGE: For IOCTL SCSI IOs that timeout, a Target Reset TM is sent, instead of Bus Reset. All error handing from that point is the same as what the driver currently does, which is to say that if the Device Reset TM fails it escalates do diagnostic reset. Signed-off-by: NKashyap Desai <kashyap.desai@lsi.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Kashyap, Desai 提交于
Message Unit Reset - instructs the IOC to reset the Reply Post and Free FIFO's. All the Message Frames on Reply Free FIFO are discarded. All posted buffers are freed, and event notification is turned off. IOC doesnt reply to any outstanding request. This will transfer IOC to READY state. Message unit ready is less expensive operations than Hard Reset. soft reset will not force Firmware to reload again, it only do clean up of Message units. mpt_Soft_Hard_ResetHandler will first try for Soft Reset,if it fails then go for big hammer reset which is Hard Reset. Signed-off-by: NKashyap Desai <kashyap.desai@lsi.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Kashyap, Desai 提交于
Upgraded version string. Signed-off-by: NKashyap Desai <kashyap.desai@lsi.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Kashyap, Desai 提交于
Copyright changes for year 2010. Signed-off-by: NKashyap Desai <kashyap.desai@lsi.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Kashyap, Desai 提交于
RAID_SCSI_IO_PASSTHROUGH: Driver needs to be send the default descriptor for RAID Passthru, currently its sending SCSI_IO descriptor. Signed-off-by: NKashyap Desai <kashyap.desai@lsi.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Kashyap, Desai 提交于
Added proper return type values in case memory allocation failed. Signed-off-by: NKashyap Desai <kashyap.desai@lsi.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Kashyap, Desai 提交于
Removed all the mutex's for ioc->tm_cmds.mutex, then created one single mutex inside the function mpt2sas_scsih_issue_tm. This is the single function used when sending task management. Also the sanity checks required for scsi mid layer escalation were moved to inside the same function because these checks need to be done while the mutex is held. The ioc->tm_cmds.mutex inside the IOCTL branch is really not required since there is another mutex in this code called for ctl_cmds handling this sync. Signed-off-by: NKashyap Desai <kashyap.desai@lsi.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Kashyap, Desai 提交于
1. Fixes for little endian issues. 2. Now Debug info for Discovery event is more readable. Signed-off-by: NKashyap Desai <kashyap.desai@lsi.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Kashyap, Desai 提交于
Now Driver will not treat NEEDS_INIT as failure. In addition to this, the driver will now display message to describe the the access flags when bits are set, so the end user can better understand failures. Signed-off-by: NKashyap Desai <kashyap.desai@lsi.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Kashyap, Desai 提交于
Aded checks for shost_recovery flag for early return from function. Signed-off-by: NKashyap Desai <kashyap.desai@lsi.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Kashyap, Desai 提交于
use the get_free_pages API for larger contigious physical memory chunk. Also, the ioc->chain_depth need to be changed from a 16bit to 32bit variable because the number of chains will exceed 64k when the queue depth is large. Signed-off-by: NKashyap Desai <kashyap.desai@lsi.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Kashyap, Desai 提交于
bug fix in the handling of the internal device reset event The reason code check in scsih_sas_device_status_change_event never evaluates as true for internal device reset, hence driver never quiesce s IO when firmware is sending a device reset. The fix is to change the evaluate to: if (event_data->ReasonCode != MPI2_EVENT_SAS_DEV_STAT_RC_INTERNAL_DEVICE_RESET && event_data->ReasonCode != MPI2_EVENT_SAS_DEV_STAT_RC_CMP_INTERNAL_DEV_RESET) return; Signed-off-by: NKashyap Desai <kashyap.desai@lsi.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Kashyap, Desai 提交于
incorrect timestamp on 32 bit platforms: The upper 32 bit of the timestamp was getting truncated when converting seconds to milliseconds, which was due to the variable being long. To fix the problem, the variable needs to be u64. Also the microseconds conversion to milliseconds was incorrect; it should be divide by 1000 instead of divide by 8. Signed-off-by: NKashyap Desai <kashyap.desai@lsi.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Kashyap, Desai 提交于
[SCSI] mpt2sas : Do not reset handle before calling _scsih_remove_device in RESCAN task after HBA RESET Setting handle to zero is not required before _scsih_remove_device. Driver uses sas_device->handle reference in _scsih_remove_device. Signed-off-by: NKashyap Desai <kashyap.desai@lsi.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 James Smart 提交于
Signed-off-by: NAlex Iannicelli <alex.iannicelli@emulex.com> Signed-off-by: NJames Smart <james.smart@emulex.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 James Smart 提交于
- Enable NPIV by default. - Added code to handle unsolicited LOGO on physical port. Signed-off-by: NAlex Iannicelli <alex.iannicelli@emulex.com> Signed-off-by: NJames Smart <james.smart@emulex.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 James Smart 提交于
Only abort outstanding I/O to force the OS to retry failed I/Os for AER uncorrectable non-fatal errors instead of reseting the adapter. Signed-off-by: NAlex Iannicelli <alex.iannicelli@emulex.com> Signed-off-by: NJames Smart <james.smart@emulex.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 James Smart 提交于
- Add BSG support for PCI loopback testing. - Add BSG support for extended mailbox commands. Signed-off-by: NAlex Iannicelli <alex.iannicelli@emulex.com> Signed-off-by: NJames Smart <james.smart@emulex.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 James Smart 提交于
- Correct all SLI4 code to work on big endian systems. - Move read of sli4 params earlier so returned values are used correctly. Signed-off-by: NAlex Iannicelli <alex.iannicelli@emulex.com> Signed-off-by: NJames Smart <james.smart@emulex.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 James Smart 提交于
FCF failover improvements - Add random FCF failover when there are multiple FCFs available. - Prevent FCF log messages from being displayed for FC adapters. - Separate the New FCF and Modified FCF log messages. Signed-off-by: NAlex Iannicelli <alex.iannicelli@emulex.com> Signed-off-by: NJames Smart <james.smart@emulex.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Kei Tokunaga 提交于
This patch fixes some issues of mptctl_exit(). 1) It doesn't call mpt_deregister() for mptctl_taskmgmt_id => Insmoding/rmmoding mptctl.ko repeadtedly (up to MPT_MAX_PROTOCOL_DRIVERS-1 at most) can eat up all cb_idx, and that would cause a lack of MptCallbacks[], MptDriverClass[], and MptEvHandlers[]. 2) It doesn't call mpt_event_deregister() for mptctl_id => Need to call it. 3) It calls mpt_reset_deregister() for mptctl_taskmgmt_id => This could accidentally deregister an innocent reset handler that you don't want to. This patch also adds a check for mptctl_taskmgmt_id. Signed-off-by: NKei Tokunaga <tokunaga.keiich@jp.fujitsu.com> Acked-by: N"Desai, Kashyap" <Kashyap.Desai@lsi.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Joe Eykholt 提交于
When the kernel is configured for preemption, using smp_processor_id() when preemption is enabled causes a warning backtrace and is wrong since we could move off of that CPU as soon as we get the ID, and we would be referencing the wrong CPU, and possibly an invalid one if it could be hotswapped out. Remove the fc_lport_get_stats() function and explicitly use per_cpu_ptr() to get the statistics. Where preemption has been disabled by holding a _bh lock continue to use smp_processor_id(), but otherwise use get_cpu()/put_cpu(). In fcoe_recv_frame() also changed the cases where we return in the middle to do a goto to the code which bumps ErrorFrames and does a put_cpu(). Two of these cases didn't bump ErrorFrames before, but doing so is harmless because they "can't happen", due to prior length checks. Also rearranged code in fcoe_recv_frame() to have only one call to fc_exch_recv(). It's just as efficient and saves a call to put_cpu(). In fc_fcp.c, adjusted a FIXME comment for code which doesn't need fixing. Signed-off-by: NJoe Eykholt <jeykholt@cisco.com> Signed-off-by: NRobert Love <robert.w.love@intel.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Robert Love 提交于
DID_ERROR cases can be ambigouos. Debugging FCP error cases will be much easier if we have debug statements when we hit these error conditions. This patch simply adds debug messages using the FC_FCP_DBG macro when we return DID_ERROR to SCSI. This way if a DID_ERROR is reproducible turning on debug_logging will give a clue to developers as to what the problem might be. Signed-off-by: NRobert Love <robert.w.love@intel.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-