On Sat, May 24, 2008 at 11:12 AM, Peter Teoh <htmldeveloper@xxxxxxxxx> wrote: > On Sat, May 24, 2008 at 11:06 AM, Peter Teoh <htmldeveloper@xxxxxxxxx> wrote: >> On Thu, May 22, 2008 at 1:43 AM, Mayank Kaushik <mayank.utexas@xxxxxxxxx> wrote: >>> Hi everyone, >>> >>> I have been reading Chapter 9 of the Intel Processor Manuals, Vol 3A >>> (System Programming Guide), which details the APIC. >>> I have noticed that we often have to add the noapic and nolapic >>> arguments to the kernel command line to make devices like the wireless >>> card work. The explanation for these options simply stated that this >>> is to overcome "buggy bios implementations". >>> >>> Can someone here explain what could possibly be the bug in the bios >>> that necessitates the use of these arguments? Further, what does the >>> kernel do differently when it sees these arguments? >>> >>> Thanks for your help, >>> Mayank >>> >>> -- >> >> For an example of CPU bugs, check the revision guide for AMD processor: >> >> http://www.datasheetcatalog.org/datasheet/AdvancedMicroDevices/mXuuwq.pdf >> >> And from page 11 to the end are all the different Erratum nos: >> >> and specifically for erratum #22: >> >> inside kernel source code drivers/pci/quirks.c: >> >> /* >> * The AMD io apic can hang the box when an apic irq is masked. >> * We check all revs >= B0 (yet not in the pre production!) as the bug >> * is currently marked NoFix >> * >> * We have multiple reports of hangs with this chipset that went away with >> * noapic specified. For the moment we assume it's the erratum. We may be wrong >> * of course. However the advice is demonstrably good even if so.. >> */ >> static void __devinit quirk_amd_ioapic(struct pci_dev *dev) >> { >> if (dev->revision >= 0x02) { > > Sorry, the revision guide URL above is for 3.09, and so it listed > erratum 1 to 92...with missing numbers in between, one of them is > #22....but since the kernel source mentioned revision >= 2, so the > erratum must be described in another revision guide...not sure > where....but the idea is the same....keep searching....and new > features in the CPU sometimes cannot be relied on..... > >> dev_warn(&dev->dev, "I/O APIC: AMD Erratum #22 may be >> present. In the event of instability try\n"); >> dev_warn(&dev->dev, " : booting with the >> \"noapic\" option\n"); >> } >> } >> DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_AMD, >> PCI_DEVICE_ID_AMD_VIPER_7410, quirk_amd_ioapic); >> >> The above is the rectification for the error, basically by setting >> noapic option u overcome the error. >> >> Just an example. >> I think I found it .... there are many different revision guide with erratum #22: AMD-766 Peripheral Bus Controller Revision Guide http://www.amd.com/us-en/assets/content_type/white_papers_and_tech_docs/23615.pdf 22 Multiprocessor System May Hang While in FULL APIC Mode and IOAPIC Interrupt is Masked -- Regards, Peter Teoh -- To unsubscribe from this list: send an email with "unsubscribe kernelnewbies" to ecartis@xxxxxxxxxxxx Please read the FAQ at http://kernelnewbies.org/FAQ