- 06 5月, 2007 2 次提交
-
-
由 James Smart 提交于
Rework offline path to solve HBA reset issues Signed-off-by: NJames Smart <James.Smart@emulex.com> Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
-
由 James Smart 提交于
Misc bug fixes and code cleanup: - Fix system hang while running on systems with IOMMU - Fix use after free issues with rports - Don't free mailbox structure if it's still on the mboxq list - Decrement txq_cnt rather than txcmplq_cnt when parsing the txq list - Use msleep for long delays to prevent soft lockup bug check - Don't remove node during dev_loss_tmo if discovery is active - Fix memory leaks in get/reset statistics and link attention paths - Fixed lpfc_ns_rsp to handle entire GID_FT response. - mbox interface should use MAILBOX_CMD_SIZE rather than sizeof(MAILBOX_t) - Fixed bug check in add_timer. - Fixup messages 0116, 0117, and 0128 to report ELS I/O tag. - Remove unused parameter to lpfc_cleanup. - Change mailbox timeout handling. - Remove unused buflist. Code cleanup. Signed-off-by: NJames Smart <James.Smart@emulex.com> Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
-
- 01 4月, 2007 1 次提交
-
-
由 Anton Blanchard 提交于
We have seen two cases where VPD on an emulex card has been incorrect and we end up walking off the end of memory. It looks like someone made an update (increased the length of a string) without increasing the Length field. Then we do: Length -= (3+i); And since Length is unsigned it becomes very large and we loop forever in the encapsulating: while (Length > 0) { If we make Length signed then we fall out of the loop and proceed on. Its important to note we have only seen this in the lab and it may be the only two cases of this in existence, but since the rest of the code has been written to be resilient against bad VPD we may as well fix this too. Signed-off-by: NAnton Blanchard <anton@samba.org> Acked-by: NJames Smart <James.Smart@Emulex.Com> Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
-
- 11 3月, 2007 1 次提交
-
-
由 Linas Vepstas 提交于
If a PCI error is detected that cannot be recovered from, there will be a double call of lpfc_pci_remove_one(), with the second call resulting in a null-pointer dereference. The first call occurs in lpfc_io_error_detected(), and the second call during pci device remove. This patch eliminates the first call; its un-needed. Signed-off-by: NLinas Vepstas <linas@austin.ibm.com> Acked-by: NJames Smart <James.Smart@Emulex.Com> Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
-
- 16 2月, 2007 1 次提交
-
-
由 Linas Vepstas 提交于
This patch adds PCI Error recovery support to the Emulex Lightpulse Fibrechannel (lpfc) SCSI device driver. Lightly tested at this point, works. Signed-off-by: NLinas Vepstas <linas@austin.ibm.com> Acked-by: Bino.Sebastian@Emulex.Com Acked-by: NJames Smart <james.smart@emulex.com> Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
-
- 03 12月, 2006 6 次提交
-
-
由 James Smart 提交于
Misc Fixes: - Prevent references to NULL node list element in reset routines. - Add missing IOCB types to switch tables - Reset the card on Port Error 5 - Fix infinite loop in LUN reset Signed-off-by: NJames Smart <James.Smart@emulex.com> Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
-
由 James Smart 提交于
The driver now allows both wwpn and wwnn to be set. Signed-off-by: NJames Smart <James.Smart@emulex.com> Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
-
由 James Smart 提交于
To avoid continually updating the driver for new subsystem ids (as adapter modules are proliferating), remove this 2nd level decode. Genericize the reported Adapter names to be consistent across Emulex product line. Signed-off-by: NJames Smart <James.Smart@emulex.com> Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
-
由 James Smart 提交于
Add MSI (Message Signalled Interrupts) support Actual use must be enabled via the new module parameter "lpfc_use_msi" Defaults to no use Many thanks to Frederic Temporelli who implemented the initial patch. Signed-off-by: NFrederic Temporelli <frederic.temporelli@ext.bull.net> Signed-off-by: NJames Smart <James.Smart@emulex.com> Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
-
由 James Smart 提交于
Fix Memory leaks associated with mbox cmds READ_LA, READ_SPARAM, REG_LOGIN Signed-off-by: NJames Smart <James.Smart@emulex.com> Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
-
由 James Smart 提交于
It was not accounted for in the fast/slow rings. Genericize the implementation and control it via sysfs Signed-off-by: NJames Smart <James.Smart@emulex.com> Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
-
- 27 9月, 2006 1 次提交
-
-
由 James Smart 提交于
Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
-
- 05 9月, 2006 1 次提交
-
-
由 James Smart 提交于
Add support for a new lpfc soft_wwpn sysfs attribute Signed-off-by: NJames Smart <James.Smart@emulex.com> Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
-
- 03 9月, 2006 1 次提交
-
-
由 James Smart 提交于
Add support to post events via new FC event interfaces Signed-off-by: NJames Smart <James.Smart@emulex.com> Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
-
- 20 8月, 2006 1 次提交
-
-
由 James Smart 提交于
Misc Bug Fixes: - Cap MBX_DOWN_LINK command timeout to 60 seconds - Fix double free of ndlp object - Don't free mbox structures on error. The completion handlers expect to do so. - Clear host attention work items when going offline - Fixed discovery issues in multi-initiator environments. Signed-off-by: NJames Smart <James.Smart@emulex.com> Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
-
- 07 8月, 2006 1 次提交
-
-
由 James Smart 提交于
Short bug fixes: - Fix iocbq list corruption due to missing list_del's in ct handling - Missing unlock in lpfc_sli_next_iotag() - Fix initialization of can_queue value - Differentiate sysfs mailbox errors with different codes. Signed-off-by: NJames Smart <James.Smart@emulex.com> Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
-
- 09 7月, 2006 4 次提交
-
-
由 James Smart 提交于
Misc Fixes: - Fix some sparse warnings - casts of address space - Fix handling of the adapter registration string. Each invocation was byteswapping, so every other adapter init attempt failed. - Correct comments and default value for the lpfc_max_luns parameter Signed-off-by: NJames Smart <James.Smart@emulex.com> Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
-
由 James Smart 提交于
Add lpfc_sli_flush_mbox_queue() function and use it in lpfc_offline() call to avoid deadlock on thread block. Signed-off-by: NJames Smart <James.Smart@emulex.com> Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
-
由 James Smart 提交于
Correct the wait in attachment that delays for topology discovery Signed-off-by: NJames Smart <James.Smart@emulex.com> Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
-
由 James Smart 提交于
Fix txcmplq related panics on heavy IO while downloading firmware Signed-off-by: NJames Smart <James.Smart@emulex.com> Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
-
- 03 7月, 2006 1 次提交
-
-
由 Thomas Gleixner 提交于
Signed-off-by: NThomas Gleixner <tglx@linutronix.de> Cc: Ingo Molnar <mingo@elte.hu> Cc: "David S. Miller" <davem@davemloft.net> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Cc: James Bottomley <James.Bottomley@steeleye.com> Signed-off-by: NAndrew Morton <akpm@osdl.org> Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
-
- 27 6月, 2006 2 次提交
-
-
由 James Smart 提交于
This removes the duplicate functionality which had been added to the lpfc driver. Signed-off-by: NJames Smart <James.Smart@emulex.com> Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
-
由 Randy Dunlap 提交于
From: Randy Dunlap <rdunlap@xenotime.net> Fix sparse warnings: use NULL instead of 0 for pointers: drivers/scsi/lpfc/lpfc_els.c:827:56: warning: Using plain integer as NULL pointer drivers/scsi/lpfc/lpfc_els.c:2781:18: warning: Using plain integer as NULL pointer drivers/scsi/lpfc/lpfc_els.c:2782:18: warning: Using plain integer as NULL pointer drivers/scsi/lpfc/lpfc_init.c:951:21: warning: Using plain integer as NULL pointer drivers/scsi/lpfc/lpfc_init.c:956:20: warning: Using plain integer as NULL pointer Signed-off-by: NRandy Dunlap <rdunlap@xenotime.net> Signed-off-by: NAndrew Morton <akpm@osdl.org> Acked-by: NJames Smart <James.Smart@Emulex.Com> Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
-
- 20 4月, 2006 3 次提交
-
-
由 James Smart 提交于
Contains the following misc fixes: - Fix build warnings - Race condition in lpfc_workq_post_event() could corrupt phba->work_list. - nlp_sid was not being initialized properly - Fix some RSCN handling during the re-discovery after Link Up event. Signed-off-by: NJames Smart <James.Smart@emulex.com> Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
-
由 James Smart 提交于
Fix cleanup code in the lpfc_pci_probe_one() error code path. This changes the original patch by: - hardsetting the return value from lpfc_pci_probe_one() to -ENODEV (negative value) if we fail attach - removes the checks from lpfc_pci_remove_one() validating the host and phba pointers as it's no longer needed. Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
-
由 James Smart 提交于
Use asynchronous ABTS completion to speed up abort completions Signed-off-by: NJames Smart <James.Smart@emulex.com> Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
-
- 12 3月, 2006 1 次提交
-
-
由 James Smart 提交于
Introduce lpfc_reset_barrier() function for resets on dual channel adapters Workaround for a hardware errata on dual channel asics. There is a potential for the chip to lock up on a reset if a shared dma engine is in use. The (ugly) work around requires a reset process which uses a mailbox command to synchronize the independent channels prior to the reset to avoid the issue. Unfortunately, the timing windows required to ensure this workaround succeeds are very specific, meaning we can't release the cpu during the barrier. Signed-off-by: NJames Smart <James.Smart@emulex.com> Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
-
- 07 3月, 2006 1 次提交
-
-
由 James Bottomley 提交于
Stop gcc complaining about undefined variables Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
-
- 06 3月, 2006 2 次提交
-
-
由 Jamie Wellnitz 提交于
PCI hrd_type should be obtained with pci_read_config_byte() macro Driver keys off of this field to report the proper adapter type. The pci subsystem explicitly clears the multiport bit in the copy of the field given the driver. Thus, to properly name the card, obtain it from config space. Signed-off-by: NJamie Wellnitz <Jamie.Wellnitz@emulex.com> Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
-
由 Jamie Wellnitz 提交于
Derive supported speeds from LMT field in the READ_CONFIG Driver was keying off internal cores. Use what the firmware reports instead. Signed-off-by: NJamie Wellnitz <Jamie.Wellnitz@emulex.com> Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
-
- 01 3月, 2006 3 次提交
-
-
由 Jamie Wellnitz 提交于
Add ERROR and WARM_START modes for diagnostic purposes. Signed-off-by: NJamie Wellnitz <Jamie.Wellnitz@emulex.com> Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
-
由 Jamie Wellnitz 提交于
Correct use of the hostdata field in scsi_host Signed-off-by: NJamie Wellnitz <Jamie.Wellnitz@emulex.com> Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
-
由 Jamie Wellnitz 提交于
Fixed system panic in lpfc_sli_brdreset during dynamic add of LP11K Signed-off-by: NJamie Wellnitz <Jamie.Wellnitz@emulex.com> Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
-
- 14 12月, 2005 7 次提交
-
-
由 James.Smart@Emulex.Com 提交于
Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
-
由 James.Smart@Emulex.Com 提交于
- Add functionality to run in polled mode only. Includes run time attribute to enable mode. - Enable runtime writable hba settings for coallescing and delay parameters Customers have requested a mode in the driver to run strictly polled. This is generally to support an environment where the server is extremely loaded and is looking to reclaim some cpu cycles from adapter interrupt handling. This patch adds a new "poll" attribute, and the following behavior: if value is 0 (default): The driver uses the normal method for i/o completion. It uses the firmware feature of interrupt coalesing. The firmware allows a minimum number of i/o completions before an interrupt, or a maximum time delay between interrupts. By default, the driver sets these to no delay (disabled) or 1 i/o - meaning coalescing is disabled. Attributes were provided to change the coalescing values, but it was a module-load time only and global across all adapters. This patch allows them to be writable on a per-adapter basis. if value is 1 : Interrupts are left enabled, expecting that the user has tuned the interrupt coalescing values. When this setting is enabled, the driver will attempt to service completed i/o whenever new i/o is submitted to the adapter. If the coalescing values are large, and the i/o generation rate steady, an interrupt will be avoided by servicing completed i/o prior to the coalescing thresholds kicking in. However, if the i/o completion load is high enough or i/o generation slow, the coalescion values will ensure that completed i/o is serviced in a timely fashion. if value is 3 : Turns off FCP i/o interrupts altogether. The coalescing values now have no effect. A new attribute "poll_tmo" (default 10ms) exists to set the polling interval for i/o completion. When this setting is enabled, the driver will attempt to service completed i/o and restart the interval timer whenever new i/o is submitted. This behavior allows for servicing of completed i/o sooner than the interval timer, but ensures that if no i/o is being issued, then the interval timer will kick in to service the outstanding i/o. Signed-off-by: NJames Smart <James.Smart@emulex.com> Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
-
由 James.Smart@Emulex.Com 提交于
Signed-off-by: NJames Smart <James.Smart@emulex.com> Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
-
由 James.Smart@Emulex.Com 提交于
Signed-off-by: NJames Smart <James.Smart@emulex.com> Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
-
由 James.Smart@Emulex.Com 提交于
- Release task management command before counting outstanding commands. TMF was being erroneously counted as an active outstanding command. - Serialize EH calls and block requests when EH function is running. Signed-off-by: NJames Smart <James.Smart@emulex.com> Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
-
由 James.Smart@Emulex.Com 提交于
Cause: Link bounces were causing discovery ELS's to be killed. Driver was not properly flushing ELS commands upon the subsequent link bounces. Thus, processing of ELS post link bounce erroneously assumed discovery failure and device loss. Signed-off-by: NJames Smart <James.Smart@emulex.com> Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
-
由 James.Smart@Emulex.Com 提交于
Miscellaneous Cleanups: - Remove ProgType READ_REV mailbox command value check in lpfc_config_port_prep. - Convert simple printk to an lpfc_printf_log in queuecommand. - Modify lpfc_abort_handler message 0749 to display more accurate text and data. - Minor style cleanup: fix 3 long lines in lpfc_hw.h Signed-off-by: NJames Smart <James.Smart@emulex.com> Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
-