- 04 5月, 2019 1 次提交
-
-
由 Dave Carroll 提交于
[ Upstream commit b6554cfe09e1f610aed7d57164ab7760be57acd9 ] There are a few windows during AER/EEH when we can access PCIe I/O mapped registers. This will harden the access to insure we do not allow PCIe access during errors Signed-off-by: NDave Carroll <david.carroll@microsemi.com> Reviewed-by: NSagar Biradar <sagar.biradar@microchip.com> Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com> Signed-off-by: NSasha Levin (Microsoft) <sashal@kernel.org>
-
- 28 8月, 2018 1 次提交
-
-
由 Dan Carpenter 提交于
The problem is that ->reset_state is a u8 but it can be set to -1 or -2 in aac_tmf_callback() and the error handling in aac_eh_target_reset() relies on it to be signed. [mkp: fixed typo] Fixes: 0d643ff3 ("scsi: aacraid: use aac_tmf_callback for reset fib") Signed-off-by: NDan Carpenter <dan.carpenter@oracle.com> Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
-
- 14 2月, 2018 2 次提交
-
-
由 Raghava Aditya Renukunta 提交于
During sync command processing, if legacy INTx status indicates command is not completed, sample the MSIx register and check if it indicates command completion, set controller MSIx enabled flag. Signed-off-by: NPrasad B Munirathnam <prasad.munirathnam@microsemi.com> Signed-off-by: NRaghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com> Reviewed-by: NDave Carroll <david.carroll@microsemi.com> Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
-
由 Raghava Aditya Renukunta 提交于
IOP_RESET takes a long time to complete. If controller is in a state where we can bring it back with init struct, send a DropIO sync command instead. - If controller is faulted perform standard IOP_RESET in aac_srcv_init. - If controller is not faulted get adapter properties and extended properties. - Update the sa_firmware variable and determine if DropIO request is supported. - Issue DropIO request, and get the number of outstanding commands. - If all commands are complete with success (CT_OK), consider IOP_RESET is complete. - If any commands timeout, Perform the IOP_RESET. Signed-off-by: NPrasad B Munirathnam <prasad.munirathnam@microsemi.com> Signed-off-by: NRaghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com> Reviewed-by: NDave Carroll <david.carroll@microsemi.com> Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
-
- 11 1月, 2018 1 次提交
-
-
由 Raghava Aditya Renukunta 提交于
The delay for the rescan worker needs to 10 seconds, missed the HZ in there. Fixes: a1367e4a (scsi: aacraid: Reschedule host scan in case of failure) Signed-off-by: NRaghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com> Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
-
- 04 1月, 2018 15 次提交
-
-
由 Raghava Aditya Renukunta 提交于
Update driver Version to 50877 Signed-off-by: NRaghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com> Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
-
由 Raghava Aditya Renukunta 提交于
Earlier driver would scan throgh all supported buses and targets and add devices that responded. It would add devices that were _hidden_ by the fw. Driver would invalidate commands sent to _hidden_ devices via the AAC_HIDE_DISK check. Since the driver now adds only the devices that are supposed to be exposed, this code can be removed. Signed-off-by: NRaghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com> Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
-
由 Raghava Aditya Renukunta 提交于
Remove unused rescan variable. Signed-off-by: NRaghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com> Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
-
由 Raghava Aditya Renukunta 提交于
Add back the ability to scan for hotplug changes while eh was in progress. Schedule a rescan for a later time in the eh recovery code and wait for eh to complete in the rescan worker. Signed-off-by: NRaghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com> Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
-
由 Raghava Aditya Renukunta 提交于
If the driver fails to retrieve information from the fw (could happen when the fw is not fully in its senses), the driver does nothing and change is not processed correctly by the driver Schedule host rescan in case of failure. This is only for SAFW, since the information retrieval failure will happen on SAFW devices. Signed-off-by: NRaghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com> Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
-
由 Raghava Aditya Renukunta 提交于
Driver uses scsi_scan_host to add new devices in the driver init path, which adds all the fw exposed devices. The drivers resorts to queue command checks to block out commands to _hidden_ devices. Use the hotplug handler code to add new devices during driver init and other areas, this is only for safw. For ARC scsi_scan_host will still apply. Signed-off-by: NRaghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com> Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
-
由 Raghava Aditya Renukunta 提交于
Currently driver will attempt to process hotplug events concurrently based on the FW interrupt. Protect safw update function with a scan mutex. Signed-off-by: NRaghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com> Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
-
由 Raghava Aditya Renukunta 提交于
Added macros to loop through the MAX SUPPORTED Buses and Targets. This will make the code a bit easier to read. Signed-off-by: NRaghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com> Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
-
由 Raghava Aditya Renukunta 提交于
The hotplug handler code is duplicated for hba handling and container handling. Merged function to handle hba and container hot plug events into the resolve luns functions. Added a bunch of helper functions to check the validity of a given target and to check if bus, target is container device. Signed-off-by: NRaghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com> Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
-
由 Raghava Aditya Renukunta 提交于
Save the bmic information for each phy, so that it can processed in target setup function. Signed-off-by: NRaghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com> Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
-
由 Raghava Aditya Renukunta 提交于
Remove function call to process targets from the report phy luns function and make it a function in its own right. This will help understand the flow of the code. Signed-off-by: NRaghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com> Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
-
由 Raghava Aditya Renukunta 提交于
Add helper function to setup targets devices and create the base for the upcoming patches Signed-off-by: NRaghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com> Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
-
由 Raghava Aditya Renukunta 提交于
Rename variables and functions to make bmic identify, report phy luns to make them consistent across code internal existing code bases Signed-off-by: NRaghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com> Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
-
由 Raghava Aditya Renukunta 提交于
Edit function that retrieves phy lun information to use common bmic function Signed-off-by: NRaghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com> Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
-
由 Raghava Aditya Renukunta 提交于
safw command submission is duplicated across many functions. Move the safw submission code from bmic identify into its own function for common use Signed-off-by: NRaghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com> Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
-
- 15 12月, 2017 1 次提交
-
-
由 Prasad B Munirathnam 提交于
"FIB_CONTEXT_FLAG_TIMEDOUT" flag is set in aac_eh_abort to indicate command timeout. Using the same flag in reset handler causes the command to time out and the I/Os were dropped. Define a new flag "FIB_CONTEXT_FLAG_EH_RESET" to make sure I/O is properly handled in eh_reset handler. [mkp: tweaked commit message] Signed-off-by: NPrasad B Munirathnam <prasad.munirathnam@microsemi.com> Reviewed-by: NRaghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com> Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
-
- 21 11月, 2017 1 次提交
-
-
由 Guilherme G. Piccoli 提交于
Currently the driver accepts two ways of requesting an initialization reset on the adapter: by passing aac_reset_devices module parameter, or the generic kernel parameter reset_devices. It's working as intended...but if we end up reaching a scsi hang and the scsi EH mechanism takes place, aacraid performs resets as part of the scsi error recovery procedure. These EH routines might reinitialize the device, and if we have provided some of the reset parameters in the kernel command-line, we again perform an "initialization" reset. So, to avoid this duplication of resets in case of scsi EH path, this patch adds a field to aac_dev struct to keep per-adapter track of the init reset request - once it's done, we set it to false and don't proactively reset anymore in case of reinitializations. Signed-off-by: NGuilherme G. Piccoli <gpiccoli@linux.vnet.ibm.com> Reviewed-by: NRaghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com> Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
-
- 16 9月, 2017 1 次提交
-
-
由 Dave Carroll 提交于
The logic for supporting large drives was previously tied to 4Kn support for SmartIOC-2000. As SmartIOC-2000 does not support volumes using 4Kn drives, use the intended option flag AAC_OPT_NEW_COMM_64 to determine support for volumes greater than 2T. Cc: <stable@vger.kernel.org> Signed-off-by: NDave Carroll <david.carroll@microsemi.com> Reviewed-by: NChristoph Hellwig <hch@lst.de> Reviewed-by: NRaghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com> Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
-
- 17 8月, 2017 1 次提交
-
-
由 Raghava Aditya Renukunta 提交于
We terminate the aac_get_name_resp on a byte that is outside the bounds of the structure. Extend the return response by one byte to remove the out of bounds reference. Fixes: b836439f ("aacraid: 4KB sector support") Reported-by: NDan Carpenter <dan.carpenter@oracle.com> Signed-off-by: NDavid Carroll <david.carroll@microsemi.com> Signed-off-by: NRaghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com> Reviewed-by: NBart Van Assche <bart.vanassche@wdc.com> Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
-
- 08 8月, 2017 1 次提交
-
-
由 Hannes Reinecke 提交于
To correctly identify which fib has a scsi command callback this patch implements a flag FIB_CONTEXT_FLAG_SCSI_CMD. Signed-off-by: NHannes Reinecke <hare@suse.com> Reviewed-by: NRaghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com> Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
-
- 13 6月, 2017 5 次提交
-
-
由 Raghava Aditya Renukunta 提交于
Update the driver version to 50834 Signed-off-by: NRaghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com> Reviewed-by: NDavid Carroll <david.carroll@microsemi.com> Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
-
由 Raghava Aditya Renukunta 提交于
Remove reference to Series-9 HBA and created arc ctrl check function. Signed-off-by: NPrasad B Munirathnam <prasad.munirathnam@microsemi.com> Signed-off-by: NRaghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com> Reviewed-by: NDavid Carroll <david.carroll@microsemi.com> Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
-
由 Raghava Aditya Renukunta 提交于
Added function that waits with a timeout for the ctrl to be up and running after triggering an IOP reset. Also removed 30 sec sleep as it is not needed. Signed-off-by: NRaghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com> Reviewed-by: NDavid Carroll <david.carroll@microsemi.com> Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
-
由 Raghava Aditya Renukunta 提交于
The driver can now trigger IOP reset with a single reset mask. Removed code that retrieves a reset_mask from the firmware. Signed-off-by: NRaghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com> Reviewed-by: NDavid Carroll <david.carroll@microsemi.com> Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
-
由 Raghava Aditya Renukunta 提交于
The qd for ARC Native disks is calculated by dividing the max IO 1024 by the number of disks or 256 which ever is lower. This causes poor disk IO performance. The fix is set the qd based on the type of disk (SAS - 64 and SATA - 32). Signed-off-by: NRaghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com> Reviewed-by: NDavid Carroll <david.carroll@microsemi.com> Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
-
- 12 4月, 2017 1 次提交
-
-
由 Guilherme G. Piccoli 提交于
During a PCI error recovery, if aac_check_health() is not aware that a PCI error happened and we have an offline PCI channel, it might trigger some errors (like NULL pointer dereference) and inhibit the error recovery process to complete. This patch makes the health check procedure aware of PCI channel issues, and in case of error recovery process, the function aac_adapter_check_health() returns -1 and let the recovery process to complete successfully. This patch was tested on upstream kernel v4.11-rc5 in PowerPC ppc64le architecture with adapter 9005:028d (VID:DID) - the error recovery procedure was able to recover fine. Fixes: 5c63f7f7 ("aacraid: Added EEH support") Cc: stable@vger.kernel.org # v4.6+ Signed-off-by: NGuilherme G. Piccoli <gpiccoli@linux.vnet.ibm.com> Reviewed-by: NDave Carroll <david.carroll@microsemi.com> Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
-
- 23 2月, 2017 4 次提交
-
-
由 Raghava Aditya Renukunta 提交于
Updated driver version to 50792 Signed-off-by: NRaghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com> Reviewed-by: NDavid Carroll <David.Carroll@microsemi.com> Reviewed-by: NJohannes Thumshirn <jthumshirn@suse.de> Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
-
由 Raghava Aditya Renukunta 提交于
Currently the adapter firmware does not save outstanding I/O's log information when an IOP reset is triggered. This is problematic when trying to root cause and debug issues. Fixed by adding sync command to trigger I/O log file save in the adapter firmware before issuing an IOP reset. Signed-off-by: NRaghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com> Reviewed-by: NDavid Carroll <David.Carroll@microsemi.com> Reviewed-by: NJohannes Thumshirn <jthumshirn@suse.de> Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
-
由 Raghava Aditya Renukunta 提交于
After controller shutdown, all sync fibs time out due to not knowing about the switch to INT-x mode Fixed by replacing aac_src_access_devreg() to aac_set_intx_mode() call. Cc: stable@vger.kernel.org Fixes: 495c0217 (aacraid: MSI-x support) Signed-off-by: NRaghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com> Reviewed-by: NDavid Carroll <David.Carroll@microsemi.com> Reviewed-by: NJohannes Thumshirn <jthumshirn@suse.de> Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
-
由 Raghava Aditya Renukunta 提交于
Replaced camel case with snake case for init supported options. Suggested-by: NJohannes Thumshirn <jthumshirn@suse.de> Signed-off-by: NRaghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com> Reviewed-by: NDavid Carroll <David.Carroll@microsemi.com> Reviewed-by: NJohannes Thumshirn <jthumshirn@suse.de> Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
-
- 03 2月, 2017 5 次提交
-
-
由 Raghava Aditya Renukunta 提交于
Update the driver version to 50740 Signed-off-by: NRaghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com> Signed-off-by: NDave Carroll <David.Carroll@microsemi.com> Reviewed-by: NJohannes Thumshirn <jthumshirn@suse.de> Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
-
由 Raghava Aditya Renukunta 提交于
Added new copyright messages Signed-off-by: NRaghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com> Signed-off-by: NDave Carroll <David.Carroll@microsemi.com> Reviewed-by: NJohannes Thumshirn <jthumshirn@suse.de> Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
-
由 Raghava Aditya Renukunta 提交于
Added a new ioctl interface to retrieve the host device information. Signed-off-by: NRaghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com> Signed-off-by: NDave Carroll <David.Carroll@microsemi.com> Reviewed-by: NJohannes Thumshirn <jthumshirn@suse.de> Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
-
由 Raghava Aditya Renukunta 提交于
Added a new ioctl interface to trigger an IOP or IWBR reset from ioctl. Primary used by management utility to trigger resets. Signed-off-by: NRaghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com> Signed-off-by: NDave Carroll <David.Carroll@microsemi.com> Reviewed-by: NJohannes Thumshirn <jthumshirn@suse.de> Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
-
由 Raghava Aditya Renukunta 提交于
Added a new IWBR soft reset type, reworked the IOP reset interface for a bit. Signed-off-by: NRaghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com> Signed-off-by: NDave Carroll <David.Carroll@microsemi.com> Reviewed-by: NJohannes Thumshirn <jthumshirn@suse.de> Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
-