- 03 2月, 2015 22 次提交
-
-
由 Stephen Cameron 提交于
We need to reserve some commands for device rescans, aborts, and the pass through ioctls, etc. so we cannot give them all to the scsi mid layer. This is in preparation for removing cmd_special_alloc and cmd_special_free so that we can stop queuing commands internally in the driver so that we can remove the locks thta protect the queue that we will no longer have. Reviewed-by: NScott Teel <scott.teel@pmcs.com> Signed-off-by: NDon Brace <don.brace@pmcs.com> Signed-off-by: NChristoph Hellwig <hch@lst.de>
-
由 Robert Elliott 提交于
If hpsa_allocate_cmd_pool failed, we were calling two functions unnecessarily: hpsa_free_sg_chain_blocks(h); hpsa_free_cmd_pool(h); This didn't cause any problem, as those functions can tolerate being called when what they free hasn't been allocated (relevant pointers would be NULL) but it is potentially confusing. Reviewed-by: NScott Teel <scott.teel@pmcs.com> Signed-off-by: NRobert Elliott <elliott@hp.com> Signed-off-by: NDon Brace <don.brace@pmcs.com> Signed-off-by: NChristoph Hellwig <hch@lst.de>
-
由 Robert Elliott 提交于
Partial allocation failure wasn't handled correctly Reviewed-by: NScott Teel <scott.teel@pmcs.com> Signed-off-by: NRobert Elliott <elliott@hp.com> Signed-off-by: NDon Brace <don.brace@pmcs.com> Signed-off-by: NChristoph Hellwig <hch@lst.de>
-
由 Robert Elliott 提交于
Reviewed-by: NScott Teel <scott.teel@pmcs.com> Signed-off-by: NRobert Elliott <elliott@hp.com> Signed-off-by: NDon Brace <don.brace@pmcs.com> Signed-off-by: NChristoph Hellwig <hch@lst.de>
-
由 Robert Elliott 提交于
Return the actual error code instead of a generic error code. Reviewed-by: NScott Teel <scott.teel@pmcs.com> Signed-off-by: NRobert Elliott <elliott@hp.com> Signed-off-by: NDon Brace <don.brace@pmcs.com> Signed-off-by: NChristoph Hellwig <hch@lst.de>
-
由 Robert Elliott 提交于
Make the function name more descriptive. We use more than one interrupt. Reviewed-by: NScott Teel <scott.teel@pmcs.com> Signed-off-by: NRobert Elliott <elliott@hp.com> Signed-off-by: NDon Brace <don.brace@pmcs.com> Signed-off-by: NChristoph Hellwig <hch@lst.de>
-
由 Robert Elliott 提交于
Enhance error reporting. Reviewed-by: NScott Teel <scott.teel@pmcs.com> Signed-off-by: NRobert Elliott <elliott@hp.com> Signed-off-by: NDon Brace <don.brace@pmcs.com> Signed-off-by: NChristoph Hellwig <hch@lst.de>
-
由 Stephen Cameron 提交于
Cleanup comments to be more specific. Make messages more informational. Reviewed-by: NScott Teel <scott.teel@pmcs.com> Signed-off-by: NRobert Elliott <elliott@hp.com> Signed-off-by: NDon Brace <don.brace@pmcs.com> Signed-off-by: NChristoph Hellwig <hch@lst.de>
-
由 Webb Scales 提交于
Encapsulate the conditional predicate which tests for legacy controllers in a separate function and rework the code comments. Reviewed-by: NScott Teel <scott.teel@pmcs.com> Signed-off-by: NWebb Scales <webbnh@hp.com> Signed-off-by: NDon Brace <don.brace@pmcs.com> Signed-off-by: NChristoph Hellwig <hch@lst.de>
-
由 Robert Elliott 提交于
There is nothing worrisome about the "Waiting for controller to respond to no-op" print, so use dev_info rather than dev_warn. Reviewed-by: NScott Teel <scott.teel@pmcs.com> Signed-off-by: NRobert Elliott <elliott@hp.com> Signed-off-by: NDon Brace <don.brace@pmcs.com> Signed-off-by: NChristoph Hellwig <hch@lst.de>
-
由 Robert Elliott 提交于
If the board ID lookup function fails, return the return code rather than return -ENODEV. The only board ID failure reason right now is -ENODEV, so this just provides more informative prints in kdump and adapts to future changes. Tested with error injection while booting with reset_devices on the kernel command line: [ 62.804324] injecting error in inj_hpsa_lookup_board_id: 1 11 [ 62.804423] hpsa 0000:04:00.0: Board ID not found (the pci probe layer does not print an additional message if -ENODEV is the reason) Reviewed-by: NScott Teel <scott.teel@pmcs.com> Signed-off-by: NRobert Elliott <elliott@hp.com> Signed-off-by: NDon Brace <don.brace@pmcs.com> Signed-off-by: NChristoph Hellwig <hch@lst.de>
-
由 Robert Elliott 提交于
Return the real reason for kdump_hard_reset failure rather than change them all to -ENODEV. Reviewed-by: NScott Teel <scott.teel@pmcs.com> Signed-off-by: NRobert Elliott <elliott@hp.com> Signed-off-by: NDon Brace <don.brace@pmcs.com> Signed-off-by: NChristoph Hellwig <hch@lst.de>
-
由 Robert Elliott 提交于
The queue depth printed at startup is in decimal, so shouldn't have a 0x prefix. Reviewed-by: NScott Teel <scott.teel@pmcs.com> Signed-off-by: NRobert Elliott <elliott@hp.com> Signed-off-by: NDon Brace <don.brace@pmcs.com> Signed-off-by: NChristoph Hellwig <hch@lst.de>
-
由 Robert Elliott 提交于
In MSI and MSI-X mode, where hpsa asks for more than one interrupt, hpsa_request_irqs forgets if the first request_irq call failed if later ones succeed. It needs to exit the loop on any failure rather than continue, freeing all irqs that were requested until that point. Also, it needs to clear out the q numbers up to MAX_REPLY_QUEUES. The same is true for the general hpsa_free_irqs function. Tested with error injection of -ENOSYS on the 4th call: [ 9.277691] injecting error in inj_request_irq: 1 4 [ 9.277780] hpsa 0000:02:00.0: failed to get irq 35 for hpsa1 [ 10.711623] scsi host1: Error handler scsi_eh_1 exiting [ 10.739170] hpsa: probe of 0000:02:00.0 failed with error -38 Reviewed-by: NScott Teel <scott.teel@pmcs.com> Signed-off-by: NRobert Elliott <elliott@hp.com> Signed-off-by: NDon Brace <don.brace@pmcs.com> Signed-off-by: NChristoph Hellwig <hch@lst.de>
-
由 Fabian Frederick 提交于
Remove unused variable in hpsa_free_cmd_pool. Reviewed-by: NScott Teel <scott.teel@pmcs.com> Signed-off-by: NFabian Frederick <fabf@skynet.be> Acked-by: NDon Brace <don.brace@pmcs.com> Signed-off-by: NDon Brace <don.brace@pmcs.com> Signed-off-by: NChristoph Hellwig <hch@lst.de>
-
由 Robert Elliott 提交于
Change the function names to have hpsa prefix. Reviewed-by: NScott Teel <scott.teel@pmcs.com> Signed-off-by: NRobert Elliott <elliott@hp.com> Signed-off-by: NDon Brace <don.brace@pmcs.com> Signed-off-by: NChristoph Hellwig <hch@lst.de>
-
由 Robert Elliott 提交于
HP now uses RAID-6 rather than RAID-ADG (Advanced Data Guarding) as the marketing name for our implementation of RAID-6. The driver considers RAID-1 and RAID-1+0 to be the same level, and considers RAID-1ADM and RAID-1+0ADM to be the same level. Parenthesis can be used to reflect the optional +0 portion of both those RAID levels. Rename: RAID-ADG to RAID-6 RAID-1(1+0) to RAID-1(+0) RAID-1(ADM) to RAID-1(+0)ADM Also, add another const after the pointer type as suggested by checkpatch.pl so the array is: static const char * const raid_label[] Reviewed-by: NScott Teel <scott.teel@pmcs.com> Signed-off-by: NRobert Elliott <elliott@hp.com> Signed-off-by: NDon Brace <don.brace@pmcs.com> Signed-off-by: NChristoph Hellwig <hch@lst.de>
-
由 Don Brace 提交于
We change drive queue depths to match drive reported queue depths. The name of the SML function was changed from scsi_adjust_queue_depth changed to scsi_change_queue_depth. Reviewed-by: NScott Teel <scott.teel@pmcs.com> Signed-off-by: NDon Brace <don.brace@pmcs.com> Signed-off-by: NChristoph Hellwig <hch@lst.de>
-
由 Don Brace 提交于
Change how SA controllers are reset by changing PCI power levels. The hpsa driver was finding the PCI_PM_CTRL_STATE_MASK offset then reading/writing a bitmask to change the power state. There are kernel functions that do the same operations. Better to use the kernel functions. Signed-off-by: NDon Brace <don.brace@pmcs.com> Reviewed-by: NScott Teel <scott.teel@pmcs.com> Reviewed-by: NWebb Scales <webbnh@hp.com> Signed-off-by: NChristoph Hellwig <hch@lst.de>
-
由 Tomas Henzl 提交于
Sometimes when the card is restarted it may cause - "irq 16: nobody cared (try booting with the "irqpoll" option)" that is likely caused so, that the card, after the hard reset finishes, pulls on the irq. Disabling the ints before or after the hpsa_kdump_hard_reset_controller fixes it. At this point we can't know in which state the card is, so using SA5_INTR_OFF + SA5_REPLY_INTR_MASK_OFFSET defines directly, instead of the function the drivers provides, seems to be apropriate. Reviewed-by: NScott Teel <scott.teel@pmcs.com> Signed-off-by: NDon Brace <don.brace@pmcs.com> Signed-off-by: NChristoph Hellwig <hch@lst.de>
-
由 Tomas Henzl 提交于
There is a potential memory leak in hpsa_kdump_hard_reset_controller. Reviewed-by: NDon Brace <don.brace@pmcs.com> Reviewed-by: NScott Teel <scott.teel@pmcs.com> Signed-off-by: NTomas Henzl <thenzl@redhat.com> Signed-off-by: NDon Brace <don.brace@pmcs.com> Signed-off-by: NChristoph Hellwig <hch@lst.de>
-
由 Don Brace 提交于
Correct endiness issues reported by sparse. SA controllers are little endian. This patch ensures endiness correctness. Signed-off-by: NDon Brace <don.brace@pmcs.com> Reviewed-by: NScott Teel <scott.teel@pmcs.com> Reviewed-by: NWebb Scales <webbnh@hp.com> Signed-off-by: NChristoph Hellwig <hch@lst.de>
-
- 21 1月, 2015 9 次提交
-
-
由 Yaniv Gardi 提交于
This change adds support for Qualcomm Technologies Inc platforms that use UFS driver. for example, it adds : - PM specific operations during hibern8, suspend, resume, clock setup - qcom-ufs generic phy driver initialization, calibration, power-on/off sequence, etc. - UFS Controller specific configuration - Rate, Gear, Mode negotiation between device and controller Signed-off-by: NYaniv Gardi <ygardi@codeaurora.org> Reviewed-by: NDov Levenglick <dovl@codeaurora.org> Signed-off-by: NChristoph Hellwig <hch@lst.de>
-
由 Yaniv Gardi 提交于
This change adds a support for a 14nm qcom-ufs phy that is required in platforms that use ufs-qcom controller. Signed-off-by: NYaniv Gardi <ygardi@codeaurora.org> Reviewed-by: NDov Levenglick <dovl@codeaurora.org> Signed-off-by: NChristoph Hellwig <hch@lst.de>
-
由 Yaniv Gardi 提交于
This change adds a support for a 20nm qcom-ufs phy that is required in platforms that use ufs-qcom controller. Signed-off-by: NYaniv Gardi <ygardi@codeaurora.org> Reviewed-by: NDov Levenglick <dovl@codeaurora.org> Signed-off-by: NChristoph Hellwig <hch@lst.de>
-
由 Yaniv Gardi 提交于
This change adds a generic and common API support for ufs phy QUALCOMM Technologies. This support provides common code and also points to specific phy callbacks to differentiate between different behaviors of frequent use-cases (like power on, power off, phy calibration etc). Signed-off-by: NYaniv Gardi <ygardi@codeaurora.org> Reviewed-by: NDov Levenglick <dovl@codeaurora.org> Signed-off-by: NChristoph Hellwig <hch@lst.de>
-
由 Christoph Hellwig 提交于
The midlayer scsi logging already logs the command and sense code if the logging level is high enough, no need to duplicate that in the sr driver. Signed-off-by: NChristoph Hellwig <hch@lst.de> Reviewed-by: NJames Bottomley <JBottomley@Parallels.com> Reviewed-by: NEwan D. Milne <emilne@redhat.com> Reviewed-by: NHannes Reinecke <hare@suse.de>
-
由 Christoph Hellwig 提交于
The midlayer logging already prints the cdb details if the logging level is high enough, no need to duplicate this in the ch driver. Signed-off-by: NChristoph Hellwig <hch@lst.de> Reviewed-by: NJames Bottomley <JBottomley@Parallels.com> Reviewed-by: NEwan D. Milne <emilne@redhat.com> Reviewed-by: NHannes Reinecke <hare@suse.de>
-
由 Christoph Hellwig 提交于
Signed-off-by: NChristoph Hellwig <hch@lst.de> Reviewed-by: NJames Bottomley <JBottomley@Parallels.com> Reviewed-by: NEwan D. Milne <emilne@redhat.com> Reviewed-by: NHannes Reinecke <hare@suse.de>
-
由 Christoph Hellwig 提交于
Signed-off-by: NChristoph Hellwig <hch@lst.de> Reviewed-by: NJames Bottomley <JBottomley@Parallels.com> Reviewed-by: NEwan D. Milne <emilne@redhat.com> Reviewed-by: NHannes Reinecke <hare@suse.de>
-
由 Hannes Reinecke 提交于
We should only try to evaluate the cdb if this is an ATAPI device, for any other device the 'cdb' field and the cdb_len has no meaning. Fixes: cbba5b0eReported-by: NSergey Senozhatsky <sergey.senozhatsky@gmail.com> Signed-off-by: NHannes Reinecke <hare@suse.de> Reviewed-by: NTejun Heo <tj@kernel.org> Tested-by: NSergey Senozhatsky <sergey.senozhatsky@gmail.com> Signed-off-by: NChristoph Hellwig <hch@lst.de>
-
- 13 1月, 2015 9 次提交
-
-
由 Sreekanth Reddy 提交于
Bump mpt2sas driver version to 20.100.00.00. Signed-off-by: NSreekanth Reddy <Sreekanth.Reddy@avagotech.com> Reviewed-by: NMartin K. Petersen <martin.petersen@oracle.com> Signed-off-by: NChristoph Hellwig <hch@lst.de>
-
由 Sreekanth Reddy 提交于
Added a support to set cpu affinity mask for each MSIX vector enabled by the HBA. So that, running the irqbalancer will balance interrupts among the cpus. Change_set: 1. Added affinity_hint varable of type cpumask_var_t in adapter_reply_queue structure. And allocated a memory for this varable by calling alloc_cpumask_var. 2. Call the API irq_set_affinity_hint for each MSIx vector to affiniate it with calculated cpus at driver inilization time. 3. While freeing the MSIX vector, call this same API to release the cpu affinity mask for each MSIx vector by providing the NULL value in cpumask argument. 4. then call the free_cpumask_var API to free the memory allocated in step 2. Signed-off-by: NSreekanth Reddy <Sreekanth.Reddy@avagotech.com> Reviewed-by: NMartin K. Petersen <martin.petersen@oracle.com> Signed-off-by: NChristoph Hellwig <hch@lst.de>
-
由 Sreekanth Reddy 提交于
Copyright, Trademark & Confidentiality legal statements throughout the source code changed from LSI to Avago. Signed-off-by: NSreekanth Reddy <Sreekanth.Reddy@avagotech.com> Reviewed-by: NMartin K. Petersen <martin.petersen@oracle.com> Signed-off-by: NChristoph Hellwig <hch@lst.de>
-
由 Sreekanth Reddy 提交于
For any SCSI command, if the driver receives IOC status = SCSI_IOC_TERMINATED and log info = 0x32010081 then that command will be completed with DID_RESET host status. The definition of this log info value is "Virtual IO has failed and has to be retried". Firmware will provide this log info value with IOC Status "SCSI_IOC_TERMINATED", whenever a drive (with is a part of a volume) is pulled and pushed back within some minimal delay. With this log info value, firmware informs the driver to retry the failed IO command infinite times, so to provide some time for the firmware to discover the reinserted drive successfully instated of just retrying failed command for five times( doesn't giving enough time for firmware to complete the drive discovery) and failing the IO permanently even though drive came back successfully. Signed-off-by: NSreekanth Reddy <Sreekanth.Reddy@avagotech.com> Reviewed-by: NMartin K. Petersen <martin.petersen@oracle.com> Signed-off-by: NChristoph Hellwig <hch@lst.de>
-
由 Sreekanth Reddy 提交于
Change Set: 1. Extended the upper boundary restriction for the module parameter max_sgl_entries. Earlier, the max_sgl_entries was capped at the SCSI_MAX_SG_SEGMENTS kernel definition. With this change, the user would be able to set the max_sgl_entries to any value which is greater than SCSI_MAX_SG_SEGMENTS and less than the minimum of SCSI_MAX_SG_CHAIN_SEGMENTS & hardware limit (Calculated using IOCFacts's MaxChainDepth). 2. Added a print for the message log whenever the user sets the max_sgl_entries to a value greater than SCSI_MAX_SG_SEGMENTS to warn about the kernel definition overriding. Signed-off-by: NSreekanth Reddy <Sreekanth.Reddy@avagotech.com> Reviewed-by: NMartin K. Petersen <martin.petersen@oracle.com> Signed-off-by: NChristoph Hellwig <hch@lst.de>
-
由 Sreekanth Reddy 提交于
Change List in this MPI2 specification, 1. Added SSUTimeout field to MPI2_CONFIG_PAGE_BIOS_1, and more defines for the BiosOptions field. Signed-off-by: NSreekanth Reddy <Sreekanth.Reddy@avagotech.com> Reviewed-by: NMartin K. Petersen <martin.petersen@oracle.com> Signed-off-by: NChristoph Hellwig <hch@lst.de>
-
由 Sreekanth Reddy 提交于
Bump driver version to 19.100.00.00. Signed-off-by: NSreekanth Reddy <Sreekanth.Reddy@avagotech.com> Reviewed-by: NMartin K. Petersen <martin.petersen@oracle.com> Signed-off-by: NChristoph Hellwig <hch@lst.de>
-
由 Sreekanth Reddy 提交于
mpt2sas, mpt3sas: Fail the host reset initiated due to discovery related I/O timeouts at driver load time When a flaky disk is there in a topology then during driver load, discovery related I/O times out; which results in SCSI error recovery initiating host reset and then the controller won't see any disk. In this patch, The driver would return FAILED status to the host reset initiated due to discovery related I/O timeout if ioc->is_driver_loading is set. This flag would be set until we exit out of scsih_scan_finished(). i.e. During device discovery if one of the disk is flaky (which responds to some discovery commands and doesn't respond to some) the driver wouldn't perform host reset for discovery related I/O timeout. Instead it would return Failure for the host reset resulting in the flaky disk getting removed by the SCSI Mid layer, so other disks would be added correctly. Signed-off-by: NSreekanth Reddy <Sreekanth.Reddy@avagotech.com> Reviewed-by: NMartin K. Petersen <martin.petersen@oracle.com> Signed-off-by: NChristoph Hellwig <hch@lst.de>
-
由 Sreekanth Reddy 提交于
This patch will log a message when driver receives "Temperature Threshold exceeded" event from any temperature sensor. The message will look similar to like: mpt3sas0: Temperature Threshold flags a b c d exceeded for Sensor: x !!! mpt3sas0: Current Temp In Celsius: y where a b c d are threshold flags 0 1 2 3 Change_set: 1. Get the number of sensor count of this IOC by reading IO Unit page 8 at driver initialization time. 2. Also unmask the Temperature Threshold Event at driver initialization time 3. Whenever a MPI2_EVENT_TEMP_THRESHOLD event is received from the firmware, then print the sensor number, the maximum threshold number it has exceed and the current temperature of this sensor. Signed-off-by: NSreekanth Reddy <Sreekanth.Reddy@avagotech.com> Reviewed-by: NMartin K. Petersen <martin.petersen@oracle.com> Signed-off-by: NChristoph Hellwig <hch@lst.de>
-