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. > > > -- > Regards, > Peter Teoh > -- 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