Bug 152498

Summary: Release notes should mention changed APIC default
Product: [openSUSE] SUSE Linux 10.1 Reporter: Franz Hassels <fhassel>
Component: Release NotesAssignee: Karl Eichwalder <ke>
Status: RESOLVED FIXED QA Contact: Andreas Jaeger <aj>
Severity: Normal    
Priority: P5 - None CC: ke, kernel01, stephan.barth, suse-beta
Version: Beta 4   
Target Milestone: Beta 8   
Hardware: Other   
OS: Linux   
Whiteboard:
Found By: SUSE Technical Services Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---

Description Franz Hassels 2006-02-21 14:56:03 UTC
According to http://mailman.suse.de/mlarch/SuSE/kernel/2006/kernel.2006.02/msg00400.html, Andi changed the APIC defaults in i386. 

Provided, that these changes will stay in the final release, I would suggest to add the following to the release notes:

----------------------------->-------------------------------
We changed the APIC defaults for x86 architecture:

- Any system with a BIOS version newer than 2001 gets APIC activated by default unless APIC is disabled in the BIOS or by the user.

- Any BIOS from Intel newer than 1998 gets APIC activated by default.

- Any system with more than one CPU gets APIC activated by default.
-----------------------------<-------------------------------
Comment 1 Andreas Jaeger 2006-02-21 15:08:28 UTC
This wording does not make sense since the users do not know what it means for them.  We have to explain why APIC is important and the parameter "noapic" as an alternative.  Could you write something up?
Comment 2 Andreas Kleen 2006-02-21 15:15:34 UTC
Ok. First it should be called always IOAPIC in documentation
(the local APIC doesn't matter for this here). Just called it APIC makes it too easy to confuse with ACPI.

Comment 3 Andreas Jaeger 2006-03-02 14:22:30 UTC
Franz, can you write something up?
Comment 5 Carl-Daniel Hailfinger 2006-03-06 10:53:56 UTC
But you changed the local APIC default.
Comment 7 Franz Hassels 2006-03-06 17:10:58 UTC
----------------------------->-------------------------------
We changed the IO-APIC defaults for x86 architecture. 
An IO-APIC (I/O Advanced Programmable Interrupt Controller) is an                               
SMP-capable replacement for PC-style interrupt controllers.                                 
SMP systems and many recent uniprocessor systems have one. 

Until now, IO-APIC was disabled on uniprocessor systems by default and had to be manually activated by using the "apic" kernel parameter. 
Now it's the other way round:

- Any system with a BIOS version newer than 2001 gets IO-APIC activated by default unless IO-APIC is disabled in the BIOS or by the user (see below). 

- Any BIOS from Intel newer than 1998 gets IO-APIC activated by default.

- Any system with more than one CPU gets IO-APIC activated by default.

If you experience problems with devices not function properly, you can manually disable IO-APIC by adding the kernel parameter "noapic" to the boot options.
-----------------------------<-------------------------------

Andi, would you comment on the definition and add a sentence, why you changed the default? Thanks.
Comment 8 Andreas Kleen 2006-03-06 17:21:57 UTC
s/IO-APIC/local and IO APIC/
s/x86/32bit x86/ 

s/many recent/all recent/

And don't say one - there can be multiple of them, both local APICs 
and IO-APICs

Perhaps add a sentence that it was even disabled on SMP systems during
installation.

The other way round thing is probably misleading.

Say:

- To disable local APIC use nolapic (implies disabling IO-APICs)
- To disable IO-APIC use noapic

To get the same default as earlier releases use nolapic

Perhaps add a sentence this doesn't apply to 64bit installation - they
always run with all APICs enabled by default.

Also if possible this paragraph should be put into the online help
of the boot loader.

Comment 9 Karl Eichwalder 2006-03-13 09:17:08 UTC
Thanks so much (also to Rebecca for help with the wording!).  I'll add this section:

  <!-- Bug 152498 -->
  <sect3 status="2006-03-10" id="io-apic">
   <title>Local and IO APIC</title>
   <para>
The local and IO APIC for the 32-bit x86 architecture has changed.  A local and
IO APIC (I/O Advanced Programmable Interrupt Controller) is an SMP-capable
replacement for PC-style interrupt controllers.  SMP systems and all recent
uniprocessor systems have such a controller.
</para>

   <para>
Until now, local and IO APIC was disabled on uniprocessor systems by default
and had to be manually activated by using the "apic" kernel parameter.  Now it
runs by default and can be manually deactivated. For 64-bit systems, APIC is
always enabled by default.
</para>

   <itemizedlist>
    <listitem>
     <para>
Any system with a BIOS version newer than 2001 gets local and IO APIC activated
by default unless local and IO APIC is disabled in the BIOS or by the
user.</para>
    </listitem>

    <listitem>
     <para>Any BIOS from Intel newer than 1998 gets local and IO APIC activated
by default.</para>
    </listitem>

    <listitem>
     <para>Any system with more than one CPU gets local and IO APIC activated
by default.</para>
    </listitem>
</itemizedlist>

   <para>
If you experience problems with devices not working properly, you can manually
apply the following configuration options:</para>

   <itemizedlist>
    <listitem>
     <para>To disable local APIC, use <literal>nolapic</literal> (this implies
disabling IO APICs).</para>
    </listitem>

    <listitem>
     <para>To disable IO APIC, use <literal>noapic</literal>.</para>
    </listitem>

    <listitem>
     <para>To get the same default as earlier releases, use
<literal>nolapic</literal>.</para>
    </listitem>
   </itemizedlist>
<!-- Also if possible this paragraph should be put into the online help
of the boot loader.
-->
  </sect3>
Comment 10 Karl Eichwalder 2006-03-13 12:17:35 UTC
-> /work