diff options
Diffstat (limited to 'Documentation/scsi/lpfc.txt')
-rw-r--r-- | Documentation/scsi/lpfc.txt | 83 |
1 files changed, 83 insertions, 0 deletions
diff --git a/Documentation/scsi/lpfc.txt b/Documentation/scsi/lpfc.txt new file mode 100644 index 000000000000..4dbe41370a6d --- /dev/null +++ b/Documentation/scsi/lpfc.txt | |||
@@ -0,0 +1,83 @@ | |||
1 | |||
2 | LPFC Driver Release Notes: | ||
3 | |||
4 | ============================================================================= | ||
5 | |||
6 | |||
7 | IMPORTANT: | ||
8 | |||
9 | Starting in the 8.0.17 release, the driver began to be targeted strictly | ||
10 | toward the upstream kernel. As such, we removed #ifdefs for older kernels | ||
11 | (pre 2.6.10). The 8.0.16 release should be used if the driver is to be | ||
12 | run on one of the older kernels. | ||
13 | |||
14 | The proposed modifications to the transport layer for FC remote ports | ||
15 | and extended attribute support is now part of the upstream kernel | ||
16 | as of 2.6.12. We no longer need to provide patches for this support, | ||
17 | nor a *full* version which has old an new kernel support. | ||
18 | |||
19 | The driver now requires a 2.6.12 (if pre-release, 2.6.12-rc1) or later | ||
20 | kernel. | ||
21 | |||
22 | Please heed these dependencies.... | ||
23 | |||
24 | |||
25 | ******************************************************************** | ||
26 | |||
27 | |||
28 | The following information is provided for additional background on the | ||
29 | history of the driver as we push for upstream acceptance. | ||
30 | |||
31 | Cable pull and temporary device Loss: | ||
32 | |||
33 | In older revisions of the lpfc driver, the driver internally queued i/o | ||
34 | received from the midlayer. In the cases where a cable was pulled, link | ||
35 | jitter, or a device temporarily loses connectivity (due to its cable | ||
36 | being removed, a switch rebooting, or a device reboot), the driver could | ||
37 | hide the disappearance of the device from the midlayer. I/O's issued to | ||
38 | the LLDD would simply be queued for a short duration, allowing the device | ||
39 | to reappear or link come back alive, with no inadvertant side effects | ||
40 | to the system. If the driver did not hide these conditions, i/o would be | ||
41 | errored by the driver, the mid-layer would exhaust its retries, and the | ||
42 | device would be taken offline. Manual intervention would be required to | ||
43 | re-enable the device. | ||
44 | |||
45 | The community supporting kernel.org has driven an effort to remove | ||
46 | internal queuing from all LLDDs. The philosophy is that internal | ||
47 | queuing is unnecessary as the block layer already performs the | ||
48 | queuing. Removing the queues from the LLDD makes a more predictable | ||
49 | and more simple LLDD. | ||
50 | |||
51 | As a potential new addition to kernel.org, the 8.x driver was asked to | ||
52 | have all internal queuing removed. Emulex complied with this request. | ||
53 | In explaining the impacts of this change, Emulex has worked with the | ||
54 | community in modifying the behavior of the SCSI midlayer so that SCSI | ||
55 | devices can be temporarily suspended while transport events (such as | ||
56 | those described) can occur. | ||
57 | |||
58 | The proposed patch was posted to the linux-scsi mailing list. The patch | ||
59 | is contained in the 2.6.10-rc2 (and later) patch kits. As such, this | ||
60 | patch is part of the standard 2.6.10 kernel. | ||
61 | |||
62 | By default, the driver expects the patches for block/unblock interfaces | ||
63 | to be present in the kernel. No #define needs to be set to enable support. | ||
64 | |||
65 | |||
66 | Kernel Support | ||
67 | |||
68 | This source package is targeted for the upstream kernel only. (See notes | ||
69 | at the top of this file). It relies on interfaces that are slowing | ||
70 | migrating into the kernel.org kernel. | ||
71 | |||
72 | At this time, the driver requires the 2.6.12 (if pre-release, 2.6.12-rc1) | ||
73 | kernel. | ||
74 | |||
75 | If a driver is needed for older kernels please utilize the 8.0.16 | ||
76 | driver sources. | ||
77 | |||
78 | |||
79 | Patches | ||
80 | |||
81 | Thankfully, at this time, patches are not needed. | ||
82 | |||
83 | |||