aboutsummaryrefslogtreecommitdiff
path: root/drivers/scsi
AgeCommit message (Collapse)AuthorFilesLines
2011-09-22[SCSI] bnx2fc: Bumped version to 1.0.7Bhanu Prakash Gollapudi2-2/+2
Signed-off-by: Bhanu Prakash Gollapudi <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-09-22[SCSI] bnx2fc: Handle bnx2fc_map_sg failureBhanu Prakash Gollapudi1-5/+15
Gracefully handle bnx2fc_map_sg failure, so that queuecommand returns host busy and SCSI-ml can retry the IO. Signed-off-by: Bhanu Prakash Gollapudi <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-09-22[SCSI] bnx2fc: Replace scsi_dma_map() with dma_map_sg().Bhanu Prakash Gollapudi1-1/+4
scsi_dma_map doesn't work for NPIV since vport dev isn't fully initialized. For more details: http://marc.info/?l=linux-scsi&m=118312448030633&w=2 and commit - c59fd9ebc46da8d48b76955d4d48e3597f8c8726. Signed-off-by: Nithin Sujir <[email protected]> Signed-off-by: Bhanu Prakash Gollapudi <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-09-22osd: Kconfig remove wrong FIXMEBoaz Harrosh1-4/+0
The OSD protocol calls for all kind of security levels that use CRYPTO_HMAC and SH1, but the current code only supports NO_SEC, which does not use any of these. Remove a wrong FIXME that calls for them. Thanks Maxin for reporting on this. Reported-by: "Maxin B. John" <[email protected]> Signed-off-by: Boaz Harrosh <[email protected]>
2011-09-22[SCSI] mpt2sas: take size of pointed value, not pointerJulia Lawall1-1/+1
Sizeof a pointer-typed expression returns the size of the pointer, not that of the pointed data. The semantic patch that fixes this problem is as follows: (http://coccinelle.lip6.fr/) // <smpl> @@ expression *e; type T; identifier f; @@ f(...,(T)e,..., -sizeof(e) +sizeof(*e) ,...) // </smpl> Signed-off-by: Julia Lawall <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-09-22[SCSI] mac_esp: remove redundant mutual exclusionFinn Thain1-9/+0
Mutual exclusion is redundant here because all the paths in the call graph leading to esp_driver_ops.send_dma_cmd() happen under spin_lock_irqsave/ spin_lock_irqrestore. Remove it. Tested on a Mac Quadra 660av and a Mac LC 630. Signed-off-by: Finn Thain <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-09-22[SCSI] mpt2sas: Bump driver version 09.100.00.01[email protected]1-2/+2
Signed-off-by: Nagalakshmi Nandigama <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-09-22[SCSI] mpt2sas: Added NUNA IO support in driver which uses multi-reply queue ↵[email protected]4-117/+401
support of the HBA Support added for controllers capable of multi reply queues. The following are the modifications to the driver to support NUMA. 1) Create the new structure adapter_reply_queue to contain the reply queue info for every msix vector. This object will contain a reply_post_host_index, reply_post_free for each instance, msix_index, among other parameters. We will track all the reply queues on a link list called ioc->reply_queue_list. Each reply queue is aligned with each IRQ, and is passed to the interrupt via the bus_id parameter. (2) The driver will figure out the msix_vector_count from the PCIe MSIX capabilities register instead of the IOC Facts->MaxMSIxVectors. This is because the firmware is not filling in this field until the driver has already registered MSIX support. (3) If the ioc_facts reports that the controller is MSIX compatible in the capabilities, then the driver will request for multiple irqs. This count is calculated based on the minimum between the online cpus available and the ioc->msix_vector_count. This count is reported to firmware in the ioc_init request. (4) New routines were added _base_free_irq and _base_request_irq, so registering and freeing msix vectors were done thru simple function API. (5) The new routine _base_assign_reply_queues was added to align the msix indexes across cpus. This will initialize the array called ioc->cpu_msix_table. This array is looked up on every MPI request so the MSIxIndex is set appropriately. (6) A new shost sysfs attribute was added to report the reply_queue_count. (7) User needs to set the affinity cpu mask, so the interrupts occur on the same cpu that sent the original request. Signed-off-by: Nagalakshmi Nandigama <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-09-22[SCSI] scsi_dh_rdac: Adding couple more vendor product idsMoger, Babu1-0/+2
This patch adds couple more Vendor/Product IDs for RDAC.. There are no functional changes. Signed-off-by: Babu Moger <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-09-22[SCSI] isci: initial sgpio write supportDan Williams3-0/+87
Basic support to initialize the gpio unit, accept an incomming SAS_GPIO_REG_TX_GP bitstream, and translate it to the ODx.n fields in the hardware registers. If register indexes outside the supported range are specified in the SMP frame we simply accept the write and return how many registers (SFF-8485) were written (libsas reports this as residue in the request). Signed-off-by: Dan Williams <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-09-22[SCSI] isci: fix sgpio register definitionsDan Williams1-118/+4
output_data_select registers are off by one u32 delete the macros we will never use. Reported-by: Artur Wojcik <[email protected]> Signed-off-by: Dan Williams <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-09-22[SCSI] libsas: sgpio write supportDan Williams1-2/+101
Add SFF-8485 v0.7 / SAS-1 smp-write-gpio register support to libsas. Defer SAS-2 support unless/until it defines an sgpio interface. Minimum implementation needed to get the lights blinking. try_test_sas_gpio_gp_bit() provides a common method to parse the incoming write data (raw bitstream), and the to_sas_gpio_gp_bit() helper routine can be used as a basis for the set/clear operations for the 'read' implementation. Host implementations parse as many bits (ODx.[012]) as are locally supported and report the number of registers successfully written. If the submitted data overruns the internal number of registers available report the write as a success with the number of bytes remaining reported in ->resid_len. Example (assuming an active backplane) set the "identify" pattern for the first 21 devices: smp_write_gpio --count=2 --data=92,49,24,92,24,92,49,24 -t 4 --index=1 /dev/bsg/sas_hostX Signed-off-by: Dan Williams <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-09-22[SCSI] scsi: qla4xxx needs libiscsi.oRandy Dunlap1-1/+1
qla4xxx driver needs to be linked with libiscsi.o to fix build errors. This happens when no other drivers that use libiscsi.o are enabled. ERROR: "iscsi_conn_stop" [drivers/scsi/qla4xxx/qla4xxx.ko] undefined! ERROR: "iscsi_conn_get_addr_param" [drivers/scsi/qla4xxx/qla4xxx.ko] undefined! ERROR: "iscsi_session_teardown" [drivers/scsi/qla4xxx/qla4xxx.ko] undefined! ERROR: "iscsi_host_alloc" [drivers/scsi/qla4xxx/qla4xxx.ko] undefined! ERROR: "iscsi_conn_start" [drivers/scsi/qla4xxx/qla4xxx.ko] undefined! ERROR: "iscsi_conn_send_pdu" [drivers/scsi/qla4xxx/qla4xxx.ko] undefined! ERROR: "iscsi_session_get_param" [drivers/scsi/qla4xxx/qla4xxx.ko] undefined! ERROR: "iscsi_conn_get_param" [drivers/scsi/qla4xxx/qla4xxx.ko] undefined! ERROR: "iscsi_set_param" [drivers/scsi/qla4xxx/qla4xxx.ko] undefined! ERROR: "iscsi_session_failure" [drivers/scsi/qla4xxx/qla4xxx.ko] undefined! ERROR: "iscsi_complete_pdu" [drivers/scsi/qla4xxx/qla4xxx.ko] undefined! ERROR: "iscsi_session_setup" [drivers/scsi/qla4xxx/qla4xxx.ko] undefined! ERROR: "iscsi_conn_bind" [drivers/scsi/qla4xxx/qla4xxx.ko] undefined! ERROR: "iscsi_conn_setup" [drivers/scsi/qla4xxx/qla4xxx.ko] undefined! ERROR: "iscsi_itt_to_task" [drivers/scsi/qla4xxx/qla4xxx.ko] undefined! Signed-off-by: Randy Dunlap <[email protected]> Reviewed-by: Mike Christie <[email protected]> Cc: [email protected] Signed-off-by: James Bottomley <[email protected]>
2011-09-22[SCSI] libsas: fix failure to revalidate domain for anything but the first ↵Mark Salyzyn1-1/+1
expander child. In an enclosure model where there are chaining expanders to a large body of storage, it was discovered that libsas, responding to a broadcast event change, would only revalidate the domain of first child expander in the list. The issue is that the pointer value to the discovered source device was used to break out of the loop, rather than the content of the pointer. This still remains non-compliant as the revalidate domain code is supposed to loop through all child expanders, and not stop at the first one it finds that reports a change count. However, the design of this routine does not allow multiple device discoveries and that would be a more complicated set of patches reserved for another day. We are fixing the glaring bug rather than refactoring the code. Signed-off-by: Mark Salyzyn <[email protected]> Cc: [email protected] Signed-off-by: James Bottomley <[email protected]>
2011-09-22Merge branch 'master' of github.com:davem330/netDavid S. Miller27-201/+608
Conflicts: MAINTAINERS drivers/net/Kconfig drivers/net/ethernet/broadcom/bnx2x/bnx2x_link.c drivers/net/ethernet/broadcom/tg3.c drivers/net/wireless/iwlwifi/iwl-pci.c drivers/net/wireless/iwlwifi/iwl-trans-tx-pcie.c drivers/net/wireless/rt2x00/rt2800usb.c drivers/net/wireless/wl12xx/main.c
2011-09-22[SCSI] aacraid: reset should disable MSI interruptVasily Averin1-0/+2
scsi reset on hardware with enabled MSI interrupts generates WARNING message [11027.798722] aacraid: Host adapter abort request (0,0,0,0) [11027.798814] aacraid: Host adapter reset request. SCSI hang ? [11087.762237] aacraid: SCSI bus appears hung [11135.082543] ------------[ cut here ]------------ [11135.082646] WARNING: at drivers/pci/msi.c:658 pci_enable_msi_block+0x251/0x290() Signed-off-by: Vasily Averin <[email protected]> Acked-by: Mark Salyzyn <[email protected]> Cc: [email protected] Signed-off-by: James Bottomley <[email protected]>
2011-09-18[SCSI] qla4xxx: select iscsi boot sysfs attrsMike Christie1-0/+1
qla4xxx now uses iscsi_boot_sysfs to export the targets used for boot to sysfs. It needs to select that config option to make sure that module is also built. Signed-off-by: Mike Christie <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-09-17[SCSI] bnx2fc: Bumped version to 1.0.6Bhanu Prakash Gollapudi2-2/+2
Signed-off-by: Bhanu Prakash Gollapudi <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-09-17[SCSI] bnx2fc: Fix FW assert during RSCN stress testsBhanu Prakash Gollapudi1-3/+1
Firmware asserts when the same CQE is armed twice. This scenario happens during RSCN stress tests as driver incorrects arms the CQ after the session is offloaded. Signed-off-by: Bhanu Prakash Gollapudi <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-09-17[SCSI] bnx2fc: Fix panic caused because of incorrect errror handling in ↵Bhanu Prakash Gollapudi1-5/+10
create(). Driver incorrectly calls bnx2fc_interface_cleanup() when bnx2fc_if_create fails which accesses bad pointer. Handle bnx2fc_if_create failure by directly calling bnx2fc_net_cleanup. Signed-off-by: Bhanu Prakash Gollapudi <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-09-17[SCSI] bnx2fc: Avoid calling bnx2fc_if_destroy with unnecessary locksBhanu Prakash Gollapudi1-6/+2
It is not required to hold rtnl_lock and bnx2fc_dev_lock when calling bnx2fc_if_destroy, as the locking is only required to serialize creation and deletion of fcoe instances. More importantly, this unnecessary locking causes deadlock as bnx2fc_if_destroy calls fc_remove_host holding rtnl_lock. Signed-off-by: Bhanu Prakash Gollapudi <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-09-17[SCSI] bnx2fc: Validate vlan id in NETDEV_UNREGISTER handlerNithin Nayak Sujir1-3/+3
When bnx2fc receives an UNREGISTER event on a vlan interface it calls destroy on all interfaces that matches the physical interface. Add vlan_id check to destroy only the vlan interface that generated the event. Signed-off-by: Nithin Nayak Sujir <[email protected]> Signed-off-by: Bhanu Prakash Gollapudi <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-09-17[SCSI] bnx2fc: No abort issued for REC when it times outBhanu Prakash Gollapudi2-14/+18
ABTS was not issued for timed out REC, as REC completion handler exits out if the IO completed. Check for timed out REC and issue ABTS before proceeding with further processing in REC completion handler. Also, initialize rec_retry and srr_retry before starting the IO. Signed-off-by: Bhanu Prakash Gollapudi <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-09-17[SCSI] bnx2fc: Send solicitation only after vlan discovery is completeBhanu Prakash Gollapudi2-4/+18
Link up event is generated to the driver even before vlan discovery has started. Because of this driver can send discovery solicitation on a stale vlan. Call fcoe_ctlr_link_up() only when the driver is in enabled state, which implies the vlan discovery is complete before sending solicitation. Signed-off-by: Bhanu Prakash Gollapudi <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-09-17[SCSI] bnx2fc: Reset max receive frame size during link upBhanu Prakash Gollapudi1-0/+2
If the max receive frame size is changed during link down, the driver uses the same value after linkup unless it is reset to default. Signed-off-by: Bhanu Prakash Gollapudi <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-09-15net: consolidate and fix ethtool_ops->get_settings callingJiri Pirko2-2/+6
This patch does several things: - introduces __ethtool_get_settings which is called from ethtool code and from drivers as well. Put ASSERT_RTNL there. - dev_ethtool_get_settings() is replaced by __ethtool_get_settings() - changes calling in drivers so rtnl locking is respected. In iboe_get_rate was previously ->get_settings() called unlocked. This fixes it. Also prb_calc_retire_blk_tmo() in af_packet.c had the same problem. Also fixed by calling __dev_get_by_index() instead of dev_get_by_index() and holding rtnl_lock for both calls. - introduces rtnl_lock in bnx2fc_vport_create() and fcoe_vport_create() so bnx2fc_if_create() and fcoe_if_create() are called locked as they are from other places. - use __ethtool_get_settings() in bonding code Signed-off-by: Jiri Pirko <[email protected]> v2->v3: -removed dev_ethtool_get_settings() -added ASSERT_RTNL into __ethtool_get_settings() -prb_calc_retire_blk_tmo - use __dev_get_by_index() and lock around it and __ethtool_get_settings() call v1->v2: add missing export_symbol Reviewed-by: Ben Hutchings <[email protected]> [except FCoE bits] Acked-by: Ralf Baechle <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-09-15Merge branch 'master' into for-nextJiri Kosina108-4697/+12471
Fast-forward merge with Linus to be able to merge patches based on more recent version of the tree.
2011-09-15Remove unneeded version.h includes from drivers/scsi/Jesper Juhl12-12/+0
It was pointed out by 'make versioncheck' that some includes of linux/version.h are not needed in drivers/scsi/. This patch removes them. Signed-off-by: Jesper Juhl <[email protected]> Signed-off-by: Jiri Kosina <[email protected]>
2011-09-15treewide: remove extra semicolons from various parts of the kernelJustin P. Mattock1-1/+1
This is a resend from the original, changing the title from PATCH to RFC(since this is a review for commit, and I should have put that the first go around). and also removing some of the commit's with ia64 and bash since it is significant. let me know if I might have missed anything etc.. Signed-off-by: Justin P. Mattock <[email protected]> Signed-off-by: Jiri Kosina <[email protected]>
2011-09-15scsi/sg: use printk_ratelimited instead of printk_ratelimitChristian Dietrich1-8/+10
Since printk_ratelimit() shouldn't be used anymore (see comment in include/linux/printk.h), replace it with printk_ratelimited. Signed-off-by: Christian Dietrich <[email protected]> Signed-off-by: Jiri Kosina <[email protected]>
2011-09-15aix94xx: Use angle brackets for system includesJoe Perches1-1/+1
Use the normal include style. Signed-off-by: Joe Perches <[email protected]> Signed-off-by: Jiri Kosina <[email protected]>
2011-09-14Merge git://bedivere.hansenpartnership.com/git/scsi-rc-fixes-2.6Linus Torvalds26-200/+607
* git://bedivere.hansenpartnership.com/git/scsi-rc-fixes-2.6: (25 commits) [SCSI] bnx2i: Fixed the endian on TTT for NOP out transmission [SCSI] libfc: fix referencing to fc_fcp_pkt from the frame pointer via fr_fsp() [SCSI] libfc: block SCSI eh thread for blocked rports [SCSI] libfc: fix fc_eh_host_reset [SCSI] fcoe: Fix deadlock between fip's recv_work and rtnl [SCSI] qla2xxx: Update version number to 8.03.07.07-k. [SCSI] qla2xxx: Set the task attributes after memsetting fcp cmnd. [SCSI] qla2xxx: Correct inadvertent loop state transitions during port-update handling. [SCSI] qla2xxx: Save and restore irq in the response queue interrupt handler. [SCSI] qla2xxx: Double check for command completion if abort mailbox command fails. [SCSI] qla2xxx: Acquire hardware lock while manipulating dsd list. [SCSI] qla2xxx: Fix qla24xx revision check while enabling interrupts. [SCSI] qla2xxx: T10 DIF - Fix incorrect error reporting. [SCSI] qla2xxx: T10 DIF - Handle uninitalized sectors. [SCSI] hpsa: fix physical device lun and target numbering problem [SCSI] hpsa: fix problem that OBDR devices are not detected [SCSI] isci: add version number [SCSI] isci: fix event-get pointer increment [SCSI] isci: dynamic interrupt coalescing [SCSI] isci: Leave requests alone if already terminating. ...
2011-09-10scsi: qla4xxx driver depends on NETRandy Dunlap1-1/+1
When CONFIG_NET is disabled, SCSI_QLA_ISCSI selects SCSI_ISCSI_ATTRS, which uses network interfaces, so the build fails with multiple errors: warning: (ISCSI_TCP && SCSI_CXGB3_ISCSI && SCSI_CXGB4_ISCSI && SCSI_QLA_ISCSI && INFINIBAND_ISER) selects SCSI_ISCSI_ATTRS which has unmet direct dependencies (SCSI && NET) ERROR: "skb_trim" [drivers/scsi/scsi_transport_iscsi.ko] undefined! ERROR: "netlink_kernel_create" [drivers/scsi/scsi_transport_iscsi.ko] undefined! ERROR: "netlink_kernel_release" [drivers/scsi/scsi_transport_iscsi.ko] undefined! ... so make SCSI_QLA_ISCSI also depend on NET to prevent the build errors. Signed-off-by: Randy Dunlap <[email protected]> Cc: Ravi Anand <[email protected]> Cc: Vikas Chaudhary <[email protected]> Cc: [email protected] Signed-off-by: Linus Torvalds <[email protected]>
2011-08-30[SCSI] scsi_dh_alua: Decrease retry intervalHannes Reinecke1-2/+2
The alua device handler starts the first retry after 10 seconds, and increases it times 10 for each round. This leads to an unnecessary delay. This patch modifies it to start after one second, and increase by a factor of two. Signed-off-by: Hannes Reinecke <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-08-30[SCSI] scsi_dh_alua: Fix Erroneous TPG ID checkHannes Reinecke1-1/+1
For Target Portal Group IDs occupying the full 2 bytes in the RTPG response, the following group_id check in the alua_rtpg routine always fails in scsi_dh_alua.c: if (h->group_id == (ucp[2] << 8) + ucp[3]) { This causes the ALUA handler to wrongly identify the AAS of a specified device as well as incorrectly interpreting the supported AAS of the target as seen by the following entries in the /var/log/messages: "alua: port group 3ea state A supports tousna" "alua: port group 3e9 state A supports tousna" This is because 'ucp' is wrongly declared in alua_rtpg as a character pointer instead of an unsigned character pointer. Signed-off-by: Martin George <[email protected]> Signed-off-by: Hannes Reinecke <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-08-30[SCSI] scsi_dh: Check for sdev state in store_dh_state()Hannes Reinecke1-0/+4
Avoid attaching a hardware handler to a device which is already scheduled for deletion. Signed-off-by: Hannes Reinecke <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-08-30[SCSI] scsi_dh_alua: always update TPGS status on activateHannes Reinecke1-5/+3
When activating a patch we should always update the TPGS state as it might have changed in between. Signed-off-by: Hannes Reinecke <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-08-30[SCSI] scsi_dh: Implement match callback functionHannes Reinecke2-25/+51
Some device handler types are not tied to the vendor/model but rather to a specific capability. Eg ALUA is supported if the 'TPGS' setting in the standard inquiry is set. This patch implements a 'match' callback for device handler which supersedes the original vendor/model lookup and implements the callback for the ALUA handler. Signed-off-by: Hannes Reinecke <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-08-30[SCSI] scsi_dh: Fixup kernel-doc commentsHannes Reinecke1-2/+2
Fixup some kernel-doc comments to reference to the correct function name. Signed-off-by: Hannes Reinecke <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-08-30[SCSI] scsi_dh_alua: Evaluate TPGS setting from inquiry dataHannes Reinecke1-49/+6
Instead of issuing a standard inquiry from within the alua device handler we can evaluate the TPGS setting from the existing inquiry data of the sdev and save us the I/O. Signed-off-by: Hannes Reinecke <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-08-30[SCSI] libsas: fix sas_queuecommand return valuesChristoph Hellwig1-4/+5
->queuecommand must return either 0, or one of the SCSI_MLQUEUE_* return values. Non-transient errors are indicated by setting cmd->result before calling ->scsi_done and returning 0. Fix libsas to adhere to this calling convention. Note that the DID_ERROR for returns from the low-level driver might not be correct for all cases, but it's the best we can do with the current layering in libsas. I also suspect that the pre-existing handling of -SAS_QUEUE_FULL should really be SCSI_MLQUEUE_HOST_BUSY, but I'll leave that for a separate change. Signed-off-by: Christoph Hellwig <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-08-30[SCSI] libsas: reindent sas_queuecommandChristoph Hellwig1-43/+38
Switch sas_queuecommand to a normal indentation and goto based error handling. Signed-off-by: Christoph Hellwig <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-08-30[SCSI] libsas: sas_queuecommand doesnt need host_lockChristoph Hellwig1-22/+3
Signed-off-by: Christoph Hellwig <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-08-29[SCSI] sd: Use sd_printk() instead of printk()Nao Nishijima1-3/+4
sd_ioctl() still use printk() for log output. It should use sd_printk() instead of printk(), as well as other sd_*. All SCSI messages should output via s*_printk() instead of printk(). Signed-off-by: Nao Nishijima <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-08-29[SCSI] bnx2fc: Need not schedule destroy_work from __bnx2fc_destroyBhanu Prakash Gollapudi1-11/+6
Since it is already called in the right context with rtnl_lock and dev_mutex held. Signed-off-by: Bhanu Prakash Gollapudi <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-08-29[SCSI] lpfc 8.3.26: Change driver version to 8.3.26James Smart1-1/+1
Signed-off-by: Alex Iannicelli <[email protected]> Signed-off-by: James Smart <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-08-29[SCSI] lpfc 8.3.26: Fix SYSFS interface issuesJames Smart2-17/+28
Fix SYSFS interface issues. - In the lpfc_sli4_pdev_status_reg_wait() routine, after initial 100ms delay following write to PHYSDEV_CONTROL register for the firmware reaction, check the RN bit and ERR bit of the SLIPORT_STATUS register. If none of them became 1, the previous PHYSDEV_CONTROL register should be considered failed due to lack of privilege and error for no permission should be returned immediately without getting into the wait for RDY bits on the SLIPORT_STATUS register. - Remove the driver check on dev->is_physfn before proceed to perform the PHYSDEV_CONTROL register write, and let the PCI function's privilege setting and driver handling of PHYSDEV_CONTROL register write failure to handle the reset-ability through the SLI port. - Added key to ctlreg_write to prevent unauthorized or unexpected write to the control register. - Change return to EACCES for sysfs access that are failed because hba_reset is disabled. Signed-off-by: Alex Iannicelli <[email protected]> Signed-off-by: James Smart <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-08-29[SCSI] lpfc 8.3.26: Fix HBA initialization issuesJames Smart2-27/+35
Fix HBA initialization issues - Swap all values that come from the firmware image on little endian systems. Created a new bf_get_be macro that does the same as the bf_get_le macro but for big endian data instead of little endian data. - Moved the incrementing of temp_offset after the copy fixed the write object loop to use temp_offset to figure out where the end of the image is instead of offset. - Added the necessary codes for properly bringing the driver instance offline and then trying to bring the port back online with the PCI function IP reset. If it fails to bring the SLI port back online, it will fall through to bringing the SLI port to HBA error offline. - Add a call in the probe_one_s3 and probe_one_s4 routines to get the Modeldesc - Change OCe50100 to OCe15100 - Made the error log also include the PCI BAR bitmap returned from kernel call pci_select_bars(). Signed-off-by: Alex Iannicelli <[email protected]> Signed-off-by: James Smart <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-08-29[SCSI] lpfc 8.3.26: Fix issues pertaining to SCSI/FC protocol.James Smart4-16/+21
Fix issues pertaining to SCSI/FC protocol. - Allow frames destined to 0xFFFFFE to be processed by the driver by matching that DID with the physical port. - Call lpfc_sli_issue_iocb with context1 set to ndlp - In echo command accept function, adjust memcpy to limit memcpy to 1K - Set LPFC_SLI3_BG_ENABLED properly upon completion. - Skip the INIT_VFI call in lpfc_register_fcf if the FCF is already registered and go immediately to initial flogi. - use "status" variable instead of "ret" variable to hold the return of the fc_block_scsi_eh. Signed-off-by: Alex Iannicelli <[email protected]> Signed-off-by: James Smart <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-08-29[SCSI] be2iscsi: Add pci_disable deviceJayamohan Kallickal1-0/+2
This patch adds call to pci_disable_device during rmmod and shutdown. The lack of this call was causing hang in insmod - rmmod loop test Signed-off-by: Jayamohan Kallickal <[email protected]> Signed-off-by: James Bottomley <[email protected]>