€•þ:Œsphinx.addnodes”Œdocument”“”)”}”(Œ rawsource”Œ”Œchildren”]”(Œ translations”Œ LanguagesNode”“”)”}”(hhh]”(hŒ pending_xref”“”)”}”(hhh]”Œdocutils.nodes”ŒText”“”ŒChinese (Simplified)”…””}”Œparent”hsbaŒ attributes”}”(Œids”]”Œclasses”]”Œnames”]”Œdupnames”]”Œbackrefs”]”Œ refdomain”Œstd”Œreftype”Œdoc”Œ reftarget”Œ/translations/zh_CN/scsi/lpfc”Œmodname”NŒ classname”NŒ refexplicit”ˆuŒtagname”hhh ubh)”}”(hhh]”hŒChinese (Traditional)”…””}”hh2sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ/translations/zh_TW/scsi/lpfc”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒItalian”…””}”hhFsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ/translations/it_IT/scsi/lpfc”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒJapanese”…””}”hhZsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ/translations/ja_JP/scsi/lpfc”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒKorean”…””}”hhnsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ/translations/ko_KR/scsi/lpfc”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒPortuguese (Brazilian)”…””}”hh‚sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ/translations/pt_BR/scsi/lpfc”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒSpanish”…””}”hh–sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ/translations/sp_SP/scsi/lpfc”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubeh}”(h]”h ]”h"]”h$]”h&]”Œcurrent_language”ŒEnglish”uh1h hhŒ _document”hŒsource”NŒline”NubhŒcomment”“”)”}”(hŒ SPDX-License-Identifier: GPL-2.0”h]”hŒ SPDX-License-Identifier: GPL-2.0”…””}”hh·sbah}”(h]”h ]”h"]”h$]”h&]”Œ xml:space”Œpreserve”uh1hµhhh²hh³Œ7/var/lib/git/docbuild/linux/Documentation/scsi/lpfc.rst”h´KubhŒsection”“”)”}”(hhh]”(hŒtitle”“”)”}”(hŒLPFC Driver Release Notes”h]”hŒLPFC Driver Release Notes”…””}”(hhÏh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÍhhÊh²hh³hÇh´KubhŒ important”“”)”}”(hXvStarting in the 8.0.17 release, the driver began to be targeted strictly toward the upstream kernel. As such, we removed #ifdefs for older kernels (pre 2.6.10). The 8.0.16 release should be used if the driver is to be run on one of the older kernels. The proposed modifications to the transport layer for FC remote ports and extended attribute support is now part of the upstream kernel as of 2.6.12. We no longer need to provide patches for this support, nor a *full* version which has old an new kernel support. The driver now requires a 2.6.12 (if pre-release, 2.6.12-rc1) or later kernel. Please heed these dependencies....”h]”(hŒ paragraph”“”)”}”(hŒúStarting in the 8.0.17 release, the driver began to be targeted strictly toward the upstream kernel. As such, we removed #ifdefs for older kernels (pre 2.6.10). The 8.0.16 release should be used if the driver is to be run on one of the older kernels.”h]”hŒúStarting in the 8.0.17 release, the driver began to be targeted strictly toward the upstream kernel. As such, we removed #ifdefs for older kernels (pre 2.6.10). The 8.0.16 release should be used if the driver is to be run on one of the older kernels.”…””}”(hhåh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hãh³hÇh´K hhßubhä)”}”(hXThe proposed modifications to the transport layer for FC remote ports and extended attribute support is now part of the upstream kernel as of 2.6.12. We no longer need to provide patches for this support, nor a *full* version which has old an new kernel support.”h]”(hŒÓThe proposed modifications to the transport layer for FC remote ports and extended attribute support is now part of the upstream kernel as of 2.6.12. We no longer need to provide patches for this support, nor a ”…””}”(hhóh²hh³Nh´NubhŒemphasis”“”)”}”(hŒ*full*”h]”hŒfull”…””}”(hhýh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hûhhóubhŒ- version which has old an new kernel support.”…””}”(hhóh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hãh³hÇh´Khhßubhä)”}”(hŒNThe driver now requires a 2.6.12 (if pre-release, 2.6.12-rc1) or later kernel.”h]”hŒNThe driver now requires a 2.6.12 (if pre-release, 2.6.12-rc1) or later kernel.”…””}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hãh³hÇh´Khhßubhä)”}”(hŒ"Please heed these dependencies....”h]”hŒ"Please heed these dependencies....”…””}”(hj#h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hãh³hÇh´Khhßubeh}”(h]”h ]”h"]”h$]”h&]”uh1hÝhhÊh²hh³hÇh´Nubhä)”}”(hŒ€The following information is provided for additional background on the history of the driver as we push for upstream acceptance.”h]”hŒ€The following information is provided for additional background on the history of the driver as we push for upstream acceptance.”…””}”(hj7h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hãh³hÇh´KhhÊh²hubhä)”}”(hŒ%Cable pull and temporary device Loss:”h]”hŒ%Cable pull and temporary device Loss:”…””}”(hjEh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hãh³hÇh´KhhÊh²hubhŒ block_quote”“”)”}”(hXÍIn older revisions of the lpfc driver, the driver internally queued i/o received from the midlayer. In the cases where a cable was pulled, link jitter, or a device temporarily loses connectivity (due to its cable being removed, a switch rebooting, or a device reboot), the driver could hide the disappearance of the device from the midlayer. I/O's issued to the LLDD would simply be queued for a short duration, allowing the device to reappear or link come back alive, with no inadvertent side effects to the system. If the driver did not hide these conditions, i/o would be errored by the driver, the mid-layer would exhaust its retries, and the device would be taken offline. Manual intervention would be required to re-enable the device. The community supporting kernel.org has driven an effort to remove internal queuing from all LLDDs. The philosophy is that internal queuing is unnecessary as the block layer already performs the queuing. Removing the queues from the LLDD makes a more predictable and more simple LLDD. As a potential new addition to kernel.org, the 8.x driver was asked to have all internal queuing removed. Emulex complied with this request. In explaining the impacts of this change, Emulex has worked with the community in modifying the behavior of the SCSI midlayer so that SCSI devices can be temporarily suspended while transport events (such as those described) can occur. The proposed patch was posted to the linux-scsi mailing list. The patch is contained in the 2.6.10-rc2 (and later) patch kits. As such, this patch is part of the standard 2.6.10 kernel. By default, the driver expects the patches for block/unblock interfaces to be present in the kernel. No #define needs to be set to enable support. ”h]”(hä)”}”(hXäIn older revisions of the lpfc driver, the driver internally queued i/o received from the midlayer. In the cases where a cable was pulled, link jitter, or a device temporarily loses connectivity (due to its cable being removed, a switch rebooting, or a device reboot), the driver could hide the disappearance of the device from the midlayer. I/O's issued to the LLDD would simply be queued for a short duration, allowing the device to reappear or link come back alive, with no inadvertent side effects to the system. If the driver did not hide these conditions, i/o would be errored by the driver, the mid-layer would exhaust its retries, and the device would be taken offline. Manual intervention would be required to re-enable the device.”h]”hXæIn older revisions of the lpfc driver, the driver internally queued i/o received from the midlayer. In the cases where a cable was pulled, link jitter, or a device temporarily loses connectivity (due to its cable being removed, a switch rebooting, or a device reboot), the driver could hide the disappearance of the device from the midlayer. I/O’s issued to the LLDD would simply be queued for a short duration, allowing the device to reappear or link come back alive, with no inadvertent side effects to the system. If the driver did not hide these conditions, i/o would be errored by the driver, the mid-layer would exhaust its retries, and the device would be taken offline. Manual intervention would be required to re-enable the device.”…””}”(hjYh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hãh³hÇh´KhjUubhä)”}”(hXThe community supporting kernel.org has driven an effort to remove internal queuing from all LLDDs. The philosophy is that internal queuing is unnecessary as the block layer already performs the queuing. Removing the queues from the LLDD makes a more predictable and more simple LLDD.”h]”hXThe community supporting kernel.org has driven an effort to remove internal queuing from all LLDDs. The philosophy is that internal queuing is unnecessary as the block layer already performs the queuing. Removing the queues from the LLDD makes a more predictable and more simple LLDD.”…””}”(hjgh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hãh³hÇh´K+hjUubhä)”}”(hXxAs a potential new addition to kernel.org, the 8.x driver was asked to have all internal queuing removed. Emulex complied with this request. In explaining the impacts of this change, Emulex has worked with the community in modifying the behavior of the SCSI midlayer so that SCSI devices can be temporarily suspended while transport events (such as those described) can occur.”h]”hXxAs a potential new addition to kernel.org, the 8.x driver was asked to have all internal queuing removed. Emulex complied with this request. In explaining the impacts of this change, Emulex has worked with the community in modifying the behavior of the SCSI midlayer so that SCSI devices can be temporarily suspended while transport events (such as those described) can occur.”…””}”(hjuh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hãh³hÇh´K1hjUubhä)”}”(hŒ¹The proposed patch was posted to the linux-scsi mailing list. The patch is contained in the 2.6.10-rc2 (and later) patch kits. As such, this patch is part of the standard 2.6.10 kernel.”h]”hŒ¹The proposed patch was posted to the linux-scsi mailing list. The patch is contained in the 2.6.10-rc2 (and later) patch kits. As such, this patch is part of the standard 2.6.10 kernel.”…””}”(hjƒh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hãh³hÇh´K8hjUubhä)”}”(hŒ’By default, the driver expects the patches for block/unblock interfaces to be present in the kernel. No #define needs to be set to enable support.”h]”hŒ’By default, the driver expects the patches for block/unblock interfaces to be present in the kernel. No #define needs to be set to enable support.”…””}”(hj‘h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hãh³hÇh´K