Description of problem: The blacklist patch that addresses this problem, as well as the bus discovery patches, have been implemented in RHEL 4, for both i386 and x86_64. HOWEVER, these patches have only been implemented for x86_64 in RHEL5. AMD-8132 hypertransport-to-PCI bridge does not support MMCONFIG cycles, so PCI configuration must use the legacy PortIO CF8/CFC mechanism. This chip also does not support MSI, and it is recommended that devices below it have MSI disabled. All x86 systems using this chip must boot with '-pci nommconfig' switch or the PCI behind this bridge will not be configured. Version-Release number of selected component (if applicable): 2.6.18-34 How reproducible: Right now, we don't see the problem because the dl585g2 BIOS does not map MMCONFIG into E820, so MMCONFIG is turned off anyway. However, as soon as the dl585g2 BIOS is fixed, we can expect problems. I have not encountered the problems yet, but Bhavana submitted patches to obviate the problem for both 1386 and x86_64 on RHEL4 but ONLY for x86_64 on RHEL5. Steps to Reproduce: 1.boot Actual results: n/a Expected results: See AMD 8132 errata at http://www.amd.com/us-en/assets/content_type/white_papers_and_tech_docs/30801.pdf Additional info:
(In reply to comment #0) This problem needs to be addressed ASAP for RHEL5-U1. This is a very easy fix, simply applying the same patch to the i386 MMCONFIG code that was made to the x86_64 MMCONFIG code in order for the code to remain consistent between the two architectures and with what was done in RHEL4. While HP can continue code the BIOS (wrongly) to indicate to RHEL that MMCONFIG is not supported on the DL585g2, which is why the 32-bit DL585g2 currently boots without the fix, this is not consistent, nor is it the correct long-term fix, since it is internally inconsistent within the BIOS itself.
Created attachment 159692 [details] Patch to blacklist 32-bit 585 in mmconfig.c This patch makes the RHEL5.1 32-bit x86 code consistent with RHEL5.1 x86_64 code and with RHEL4 32 and 64 bit x86 code. Patch to blacklist HP DL585 G2 to use legacy (CF8/CFC) PCI config accesses rather than MMCONFIG cycles.
This request was evaluated by Red Hat Product Management for inclusion in a Red Hat Enterprise Linux maintenance release. Product Management has requested further review of this request by Red Hat Engineering, for potential inclusion in a Red Hat Enterprise Linux Update release for currently deployed products. This request is not yet committed for inclusion in an Update release.
Need testing results with the latest 5.1 code + patch in addition to other testing which needs to occur.
The business case for the submitted patch is that the HP dl585g2 is a popular system among RedHat's larger customers. Systems currently blacklisted are: PLATFORM RHEL4 RHEL5 --------------------- ----- ----- HP xw9300 Workstation X X HP xw9400 Workstation X X HP ProLiant DL585 G2 X X <- 32b with the submitted patch HP Compaq dc5700 Microtower X <- 32b with the submitted patch Intel DG965MQ X Intel D26928 X As it is, the current blacklist does not cover all the systems affected, so a Release Note must accompany the RHEL 4/5 update that lists affected platforms that are not blacklisted. In RHELs 4.7 and 5.2, we can avoid the platform blacklist and release notes for platforms not included therein by blacklisting the chipsets. It's just too late to do this in RHELs 4.6 and 5.1
Tony please work with Don D. in making sure that a correct and accurate release note is attached to RHEL 5.1. Considering the temporary solution for 5.1 requires a little extra effort on the customer's part, I want to make sure the details of your email are covered in here. Thanks, Don
in 2.6.18-40.el5 You can download this test kernel from http://people.redhat.com/dzickus/el5
hope i understood this correctly. proposed note for RHEL5.1 x86 release notes ("Known Issues"): <quote> - The HP DL585 G2 and AMD 8132 chipsets do not currently support MMCONFIG cycles. If your system uses either chipset, your PCI configuration should use the legacy PortIO CF8/CFC mechanism. To configure this, boot the system with the kernel parameter -pci nommconfig during installation and add pci=nommconf to GRUB after rebooting. Further, the AMD 8132 chipset does not support MSI. If your system uses this chipset, you should also disable MSI. To do this, use the kernel parameter -pci nomsi during installation and add pci=nomsi to GRUB after rebooting. </quote> please advise if any revisions are necessary, will add upon approval. note that the release notes deadline is 16 Aug 2007 (Thursday), at which point it will be dropped
The DL585G2 is blacklisted in the code, so it does not need to boot with the - pci nommconfig and nomsi flags. The Release Note only affects those systems that use AMD8132 and BroadCom HT1000 chipsets. The only HP system I know for certain that is not blacklisted and must be in the Release Note is the DC7700. There may be others, so I will try to get information on any other HP platforms that are affected and not already blacklisted in the code. I will try to get this information to you by the close of business tomorrow, Aug 16, 2007, 5:00 PM EDT. I do not know how many other vendors are affected, but it's likely to be more than just HP.
Tony, considering any list you come up with will most likely be incomplete (it's impossible to know what every vendor is shipping), I propose the simple change to the release notes. Instead of - The HP DL585 G2 and AMD 8132 chipsets do not currently support MMCONFIG use - The AMD 8132 and BroadCom HT1000 chipsets do not currently support MMCONFIG Then at the add of the Notes perhaps add a blurb stating that the DL585G2 system is exempt from these command line changes as it is already blacklisted in the kernel (but it is the only system that is exempt). Thoughts? -Don Z
(In reply to comment #12) > Tony, considering any list you come up with will most likely be incomplete (it's > impossible to know what every vendor is shipping), I propose the simple change > to the release notes. > Instead of > - The HP DL585 G2 and AMD 8132 chipsets do not currently support MMCONFIG > use > - The AMD 8132 and BroadCom HT1000 chipsets do not currently support MMCONFIG > Then at the add of the Notes perhaps add a blurb stating that the DL585G2 system > is exempt from these command line changes as it is already blacklisted in the > kernel (but it is the only system that is exempt). > Thoughts? > -Don Z Don, The following HP platforms are exempt (already blacklisted) DL585g2 dc7500 wx9300 wx9400 HP Platforms that are NOT exempt are dc7700 others TBD by end of business today (I hope)
thanks for the input, guys. revising as follows: <quote> The AMD 8132, HP BroadCom HT100, HP dc770 and several other HP chipsets do not currently support MMCONFIG cycles. If your system uses either chipset, your PCI configuration should use the legacy PortIO CF8/CFC mechanism. To configure this, boot the system with the kernel parameter -pci nommconfig during installation and add pci=nommconf to GRUB after rebooting. Further, the AMD 8132 chipset does not support MSI. If your system uses this chipset, you should also disable MSI. To do this, use the kernel parameter -pci nomsi during installation and add pci=nomsi to GRUB after rebooting. However, if your specific chipset is already blacklisted by the kernel, your system does not require the aforementioned pci kernel parameters. The following HP chipsets are already blacklisted by the kernel: DL585g2 dc7500 wx9300 wx9400 </quote> once approved, i will add it to the RHEL5.1 release notes; you can still make it to the distro if i can add it today. :-)
Don, a couple of things. This: The AMD 8132, HP BroadCom HT100, HP dc770 and several other HP chipsets do not currently support MMCONFIG cycles. Should be changed to this: The AMD 8132 and the BroadCom HT100 used in some plafforms, like the HP dc7700, do not currently support MMCONFIG cycles. And this: wx9300 wx9400 Should be changed to this: xw9300 xw9400 After that, I'd say it's ready.
adding to RHEL5.1 release notes updates: <quote> The AMD 8132 and HP BroadCom HT100 used on some platforms (such as the HP dc7700) do not support MMCONFIG cycles. If your system uses either chipset, your PCI configuration should use the legacy PortIO CF8/CFC mechanism. To configure this, boot the system with the kernel parameter -pci nommconfig during installation and add pci=nommconf to GRUB after rebooting. Further, the AMD 8132 chipset does not support Message Signaled Interrupts (MSI). If your system uses this chipset, you should also disable MSI. To do this, use the kernel parameter -pci nomsi during installation and add pci=nomsi to GRUB after rebooting. However, if your specific platform is already blacklisted by the kernel, your system does not require the aforementioned pci kernel parameters. The following HP platforms are already blacklisted by the kernel: * DL585g2 * dc7500 * xw9300 * xw9400 </quote> please advise if any revisions are necessary. thanks!
confirmed the patch is in the -43 kernel.
An advisory has been issued which should help the problem described in this bug report. This report is therefore being closed with a resolution of ERRATA. For more information on the solution and/or where to find the updated files, please follow the link below. You may reopen this bug report if the solution does not work for you. http://rhn.redhat.com/errata/RHBA-2007-0959.html
adding to RHEL5.2 release notes under "Resolved Issues": <quote> The AMD 8132 and HP BroadCom HT100 used on some platforms (such as the HP dc7700) now support MMCONFIG cycles. As such, if you are using either chipsets, you no longer need to configure PCI to use the legacy PortIO CF8/CFC mechanism. </quote> please advise if any further revisions are required. thansk!
Don, It's not that these chipsets now support MMCONFIG cycles, but that the code tests each Northbridge to determine whether it responds to MMCONFIG cycles. If the bridge does not correctly respond, it is constrained to legacy PortIO config access. However, other bridges in the same system that respond correctly to MMCONFIG will use MMCONFIG accesses. This is important for systems having both PCI-X and PCI-express bridges. PCI express devices must have access to extended PCI config space and need MMCONFIG to provide that access. In RHEL5.1 and earlyer, where platforms were blacklisted, the entire platform was constrained to PortIO config access, thereby preventing the PCI-express devices from accessing extended config space. On a more technical note, devices on the PCI bus, whether express or legacy, only see PCI bus config cycles. They have no exposure to whether bus cycles generated by the Northbridge were the result of MMCONFIG or PortIO protocol between the Northbridge and CPU. The communication between the CPU and the Northbridge is utterly opaque to the devices on the PCI bus.
Hi, the RHEL5.2 release notes will be dropped to translation on April 15, 2008, at which point no further additions or revisions will be entertained. a mockup of the RHEL5.2 release notes can be viewed at the following link: http://intranet.corp.redhat.com/ic/intranet/RHEL5u2relnotesmockup.html please use the aforementioned link to verify if your bugzilla is already in the release notes (if it needs to be). each item in the release notes contains a link to its original bug; as such, you can search through the release notes by bug number. Cheers, Don