- 07 1月, 2012 1 次提交
-
-
由 Jan Kiszka 提交于
pci_block_user_cfg_access was designed for the use case that a single context, the IPR driver, temporarily delays user space accesses to the config space via sysfs. This assumption became invalid by the time pci_dev_reset was added as locking instance. Today, if you run two loops in parallel that reset the same device via sysfs, you end up with a kernel BUG as pci_block_user_cfg_access detect the broken assumption. This reworks the pci_block_user_cfg_access to a sleeping service pci_cfg_access_lock and an atomic-compatible variant called pci_cfg_access_trylock. The former not only blocks user space access as before but also waits if access was already locked. The latter service just returns false in this case, allowing the caller to resolve the conflict instead of raising a BUG. Adaptions of the ipr driver were originally written by Brian King. Acked-by: NBrian King <brking@linux.vnet.ibm.com> Acked-by: NMichael S. Tsirkin <mst@redhat.com> Signed-off-by: NJan Kiszka <jan.kiszka@siemens.com> Signed-off-by: NJesse Barnes <jbarnes@virtuousgeek.org>
-
- 31 10月, 2011 1 次提交
-
-
由 Wayne Boyer 提交于
Add the appropriate definition and table entry for an additional adapter. Signed-off-by: NWayne Boyer <wayneb@linux.vnet.ibm.com> Acked-by: NBrian King <brking@linux.vnet.ibm.com> Signed-off-by: NJames Bottomley <JBottomley@Parallels.com>
-
- 20 10月, 2011 1 次提交
-
-
由 Brian King 提交于
If an adapter dump times out, the ipr driver will abort the dump and proceed to reset and recover the adapter. When an adapter dump completes, the work thread which is reading the adapter dump will initiate an adapter reset to recover the adapter. However, when the adapter dump gets aborted, the work thread should not initiate an adapter reset, since an adapter reset is already in progress. This fixes a case of calling pci_block_user_cfg_access overlapped, which results in a BUG. Signed-off-by: NBrian King <brking@linux.vnet.ibm.com> Signed-off-by: NJames Bottomley <JBottomley@Parallels.com>
-
- 16 10月, 2011 1 次提交
-
-
由 Wayne Boyer 提交于
The write buffer command is used to download and burn new IOA FW images. The same interface can now be used to flash FPGA and flash back DRAM images. To download and flash the new images takes more than 15 minutes, so increase the write buffer command timeout to 30 minutes. The FPGA and flash back DRAM images don't have the same card_type as the IOA FW image. So, remove the sanity checking from the driver. The adapter has sanity checking and will only accept a valid image. Signed-off-by: NWayne Boyer <wayneb@linux.vnet.ibm.com> Acked-by: NBrian King <brking@linux.vnet.ibm.com> Signed-off-by: NJames Bottomley <JBottomley@Parallels.com>
-
- 22 9月, 2011 1 次提交
-
-
由 Brian King 提交于
When the ipr driver decides to dump the adapter, it changes the sdt_state to GET_DUMP, then prepares the adapter so that the dump can be read. However, if the ipr worker thread wakes up for some reason before the driver has put the adapter in a state where it can succesfully dump the adapter, the driver will start dumping the adapter too early, which can potentially trigger a BUG check in the pci config blocking API. Fix this by adding a new sdt_state to differentiate between the ipr driver wanting to dump the adapter in the near future and wanting to dump the adapter now. Signed-off-by: NBrian King <brking@linux.vnet.ibm.com> Signed-off-by: NJames Bottomley <JBottomley@Parallels.com>
-
- 02 5月, 2011 2 次提交
-
-
Bump the driver version. Signed-off-by: NKleber Sacilotto de Souza <klebers@linux.vnet.ibm.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
Currently the size of the dump generated by the driver is limited in 4MB, which is insufficient to gather much useful data from the new 64 bit adapters. This patch makes the needed changes to increase the dump limit for the 64 bit adapters to 32MB, or even to a bigger value in the future, but keeping the current limitations for the legacy 32 bit adapters. Signed-off-by: NKleber Sacilotto de Souza <klebers@linux.vnet.ibm.com> Acked-by: NBrian King <brking@linux.vnet.ibm.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
- 01 5月, 2011 1 次提交
-
-
由 Wayne Boyer 提交于
In testing it was noticed that Extended Delay after Reset flag was being set for gscsi and volume set devices. This had a negative effect on performance for volume sets. The fix is to only set the flag for gscsi devices. Signed-off-by: NWayne Boyer <wayneb@linux.vnet.ibm.com> Acked-by: NBrian King <brking@linux.vnet.ibm.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
- 22 12月, 2010 1 次提交
-
-
由 Wayne Boyer 提交于
The definition for the mailbox register for new adapters was incorrect. The value has been updated to the correct offset. After an adapter reset, the mailbox register on the new adapters takes a number of seconds to stabilize. A delay has been added before reading the register. Signed-off-by: NWayne Boyer <wayneb@linux.vnet.ibm.com> Acked-by: NBrian King <brking@linux.vnet.ibm.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
- 26 10月, 2010 1 次提交
-
-
由 Wayne Boyer 提交于
There was an addition to the hardware roadmap that includes a new adapter. This patch adds the new definitions for the adapter. Signed-off-by: NWayne Boyer <wayneb@linux.vnet.ibm.com> Acked-by: NBrian King <brking@linux.vnet.ibm.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
- 08 10月, 2010 1 次提交
-
-
由 Wayne Boyer 提交于
The structure definitions for reporting array errors did not have the correct size for the Array WWID field. This patch fixes those definitions. It also fixes part of the output formatting that did not have newlines and fixes size calculations. Signed-off-by: NWayne Boyer <wayneb@linux.vnet.ibm.com> Acked-by: NBrian King <brking@linux.vnet.ibm.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
- 06 9月, 2010 2 次提交
-
-
由 Wayne Boyer 提交于
Bump the driver version. Signed-off-by: NWayne Boyer <wayneb@linux.vnet.ibm.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Wayne Boyer 提交于
This patch fixes a resource address formatting problem where the first byte was being zeroed out. Also, the device ID is now made available as a sysfs attribute. Signed-off-by: NWayne Boyer <wayneb@linux.vnet.ibm.com> Acked-by: NBrian King <brking@linux.vnet.ibm.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
- 28 7月, 2010 5 次提交
-
-
由 Wayne Boyer 提交于
The value used to change the endian representation on the new adapters has changed. This patch updates that value. Signed-off-by: NWayne Boyer <wayneb@linux.vnet.ibm.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Wayne Boyer 提交于
This patch allows the driver to recognize a new Obsidian-E based adapter that uses a new subsystem ID. This patch also fixes a few tab/space problems. Signed-off-by: NWayne Boyer <wayneb@linux.vnet.ibm.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Wayne Boyer 提交于
The 64 bit chip used in new adapters does not properly support the BIST register in PCI config space. This patch implements an alternative MMIO write reset method. Signed-off-by: NWayne Boyer <wayneb@linux.vnet.ibm.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Wayne Boyer 提交于
Compiling the driver will fail on 32 bit powerpc and other architectures where writeq is not defined. This patch adds a definition for writeq. Signed-off-by: NWayne Boyer <wayneb@linux.vnet.ibm.com> Acked-by: NBrian King <brking@linux.vnet.ibm.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Wayne Boyer 提交于
A change in the hardware design of the chip for the new adapters changes the default endianness of MMIO operations. This patch adds a register definition which when written to with a predefined value will change the endianness back to what the driver expects. This patch also fixes two problems found during testing. First, the first reserved field in the ipr_hostrcb64_fabirc_desc structure only reserved one byte. The correct amount to reserve is 2 bytes. Second, the reserved field of the ipr_hostrcb64_error structure only reserved 2 bytes. The correct amount to reserve is 16 bytes. Signed-off-by: NWayne Boyer <wayneb@linux.vnet.ibm.com> Acked-by: NBrian King <brking@linux.vnet.ibm.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
- 22 7月, 2010 1 次提交
-
-
由 Wayne Boyer 提交于
It was possible to overflow the buffer used to print out the formatted version of the resource path. The fix is to limit the number of bytes that get formatted. This patch also updates the ipr_show_resource_path function to display the resource address for devices that are attached to adapters that don't support resource paths. Signed-off-by: NWayne Boyer <wayneb@linux.vnet.ibm.com> Acked-by: NBrian King <brking@linux.vnet.ibm.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
- 25 5月, 2010 3 次提交
-
-
由 Wayne Boyer 提交于
Fix ipr_reset_enable_ioa() to read the correct IOA to host interrupt register address for 64 bit adapters. We need to read the lower 32 bits, not the upper 32 bits. Also change the write of the 64 bit mask value to a single writeq instead of two writel calls. Finally, use the correct u8 type for the type field in the ipr_resource_entry structure. Signed-off-by: NWayne Boyer <wayneb@linux.vnet.ibm.com> Acked-by: NBrian King <brking@linux.vnet.ibm.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Wayne Boyer 提交于
The IOA status area now includes the new resource path field for 64 bit adapters. This patch changes the driver to fix the ioasa structure and to use the correct structure definition based on the type of adatper. Signed-off-by: NWayne Boyer <wayneb@linux.vnet.ibm.com> Acked-by: NBrian King <brking@linux.vnet.ibm.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Wayne Boyer 提交于
Implement some small fixes for 64 bit support that were preventing the adapter from becoming operational. Signed-off-by: NWayne Boyer <wayneb@linux.vnet.ibm.com> Acked-by: NBrian King <brking@linux.vnet.ibm.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
- 03 3月, 2010 7 次提交
-
-
由 Wayne Boyer 提交于
This patch adds the PCI ID definitions for new adapters based on the next generation 64 bit IOA PCI interface chip. New entries have been added to the ipr_pci_table[] array for the adapters and to the ipr_chip[] array for the new versions of the chip. Older entries have been removed for cards that did not ship. Signed-off-by: NWayne Boyer <wayneb@linux.vnet.ibm.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Wayne Boyer 提交于
This patch adds support for using the new IOA initialization feedback register. It also enables 64 bit support in the ipr_ioafp_identify_hrrq and ipr_mask_and_clear_interrupts routines. Signed-off-by: NWayne Boyer <wayneb@linux.vnet.ibm.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Wayne Boyer 提交于
This patch adds a reboot notifier that will issue a shutdown prepare command to all adapters. This helps to prevent a problem where the primary adapter can get shut down before the secondary adapter and cause the secondary adapter to fail over and log and error. This patch also removes the "enable_cache" paramater as it is obsolete. Write cache for an adapter is now controlled from the iprconfig utility. Signed-off-by: NWayne Boyer <wayneb@linux.vnet.ibm.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Wayne Boyer 提交于
This patch adds the hardware assisted smart dump functionality for the next generation IOA PCI interface chip. Signea-off-by: NWayne Boyer <wayneb@linux.vnet.ibm.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Wayne Boyer 提交于
Add support for the new log data notification and overlay IDs. Signed-off-by: NWayne Boyer <wayneb@linux.vnet.ibm.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Wayne Boyer 提交于
This patch changes the configuration table structures and related code such that both 32 bit and 64 bit based adapters can work with the driver. This patch also implements the code to generate the virtual bus/id/lun values for devices connected to the new adapters. It also implements support for the new device resource path. Signed-off-by: NWayne Boyer <wayneb@linux.vnet.ibm.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Wayne Boyer 提交于
Change the adapter command structures such that both 32 bit and 64 bit based adapters can work with the driver. Signed-off-by: NWayne Boyer <wayneb@linux.vnet.ibm.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
- 07 11月, 2009 1 次提交
-
-
由 Wayne Boyer 提交于
This patch adds some additional logic to the interrupt service routine to fix a potential problem where an MSI interrupt does not get cleared the first time. Signed-off-by: NWayne Boyer <wayneb@linux.vnet.ibm.com> Acked-by: NBrian King <brking@linux.vnet.ibm.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
- 23 8月, 2009 1 次提交
-
-
由 Brian King 提交于
ipr_cmd_label[] isn't big enough for an eight byte string plus terminator. Fix by shortening the string to seven bytes. Signed-off-by: NBrian King <brking@linux.vnet.ibm.com> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
- 21 6月, 2009 2 次提交
-
-
由 Wayne Boyer 提交于
MSI has only been tested on and known to work with PCI-E based adapters. This patch adds a field to struct ipr_chip_t to indicate which type of interrupt to use based on what is known about the chip. Signed-off-by: NWayne Boyer <wayneb@linux.vnet.ibm.com> Acked-by: NBrian King <brking@linux.vnet.ibm.com> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Wayne Boyer 提交于
The return value from pci_enable_msi() can not always be trusted. This patch adds code to generate an interrupt after MSI has been enabled and tests whether or not we can receive and process it. If the tests fails, then fall back to LSI. Signed-off-by: NWayne Boyer <wayneb@linux.vnet.ibm.com> Acked-by: NBrian King <brking@linux.vnet.ibm.com> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
- 13 3月, 2009 1 次提交
-
-
由 Wayne Boyer 提交于
Enable MSI if available/supported. Signed-off-by: NWayne Boyer <wayneb@linux.vnet.ibm.com> Acked-by: NBrian King <brking@linux.vnet.ibm.com> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
- 03 1月, 2009 1 次提交
-
-
由 Kay Sievers 提交于
[jejb: limit ioctl to returning 20 characters to avoid overrun on long device names and add a few more conversions] Signed-off-by: NKay Sievers <kay.sievers@vrfy.org> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
- 30 12月, 2008 1 次提交
-
-
由 Alan Cox 提交于
Signed-off-by: NAlan Cox <alan@redhat.com> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
- 27 7月, 2008 1 次提交
-
-
由 Harvey Harrison 提交于
[jejb: fixed up a ton of missed conversions. All of you are on notice this has happened, driver trees will now need to be rebased] Signed-off-by: NHarvey Harrison <harvey.harrison@gmail.com> Cc: SCSI List <linux-scsi@vger.kernel.org> Signed-off-by: NAndrew Morton <akpm@linux-foundation.org> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
- 09 5月, 2007 1 次提交
-
-
由 Brian King 提交于
Use a newly added PCI API to issue a PCI Fundamental reset (warm reset) to a new ipr PCI-E adapter. Typically, the ipr adapter uses the start BIST bit in config space to reset an adapter. Issuing start BIST on this particular adapter results in the PCI-E logic on the card losing sync, which causes PCI-E errors, making the card unusable. The only reset mechanism that exists on this hardware that does not have this problem is PCI Fundamental reset (warm reset). Signed-off-by: NBrian King <brking@linux.vnet.ibm.com> Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
-
- 06 5月, 2007 2 次提交
-
-
由 Brian King 提交于
Enables multi-initiator support on ipr RAID adapters that support it. Signed-off-by: NBrian King <brking@linux.vnet.ibm.com> Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
-
由 Brian King 提交于
In ipr dual adapter configurations, the ipr adapter firmware may require an adapter reset for various reasons. The reset is requested by the adapter firmware logging an error with an IOASC of 0x02048000. Add support to log this error, and reset the adapter. Signed-off-by: NBrian King <brking@linux.vnet.ibm.com> Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
-