Re: What do the noapic/nolapic kernel arguments do?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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


[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux