Bug 81784 - APIC interrupt handling not used on UP even with custom kernel
APIC interrupt handling not used on UP even with custom kernel
Status: CLOSED NOTABUG
Product: Red Hat Linux
Classification: Retired
Component: kernel (Show other bugs)
8.0
i686 Linux
medium Severity medium
: ---
: ---
Assigned To: Arjan van de Ven
Brian Brock
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2003-01-13 18:13 EST by Robert Hancock
Modified: 2007-04-18 12:49 EDT (History)
0 users

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2003-06-05 10:15:16 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Robert Hancock 2003-01-13 18:13:28 EST
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 
1.0.3705)

Description of problem:
I am using an Asus P4B533 motherboard (Intel 845E chipset). The BIOS interrupt 
handling setting is set to APIC mode. Windows XP is using APIC mode on this 
machine (as seen from the IRQ numbers over 15 used for various devices) 
without problems.

The standard UP kernel does not seem to use any APIC features. I tried 
compiling a custom kernel that includes these config settings:

CONFIG_X86_GOOD_APIC=y
CONFIG_X86_UP_APIC=y
CONFIG_X86_UP_IOAPIC=y
CONFIG_X86_LOCAL_APIC=y
CONFIG_X86_IO_APIC=y

When this kernel is booted, I get these messages:

Found and enabled local APIC!

...

Using local APIC timer interrupts.
calibrating APIC timer ...
..... CPU clock speed is 2019.1251 MHz.
..... host bus clock speed is 100.1917 MHz.

However, there is no indication that it is actually using the IO APIC which 
would allow it to use actual APIC interrupt handling. /proc/interrupts shows 
this as well:

           CPU0       
  0:    1115708          XT-PIC  timer
  1:          7          XT-PIC  keyboard
  2:          0          XT-PIC  cascade
  5:          0          XT-PIC  usb-uhci
  8:          1          XT-PIC  rtc
  9:      12629          XT-PIC  ehci-hcd, eth0, cmpci
 10:          0          XT-PIC  usb-uhci
 11:     216515          XT-PIC  usb-uhci, nvidia
 14:      14587          XT-PIC  ide0
 15:      54739          XT-PIC  ide1
NMI:          0 
LOC:    1115670 
ERR:          0
MIS:          0

Is this something that has been intentionally disabled in the Red Hat version 
of the UP kernel?

Version-Release number of selected component (if applicable):
Linux version 2.4.18-19.8.0custom (root@northbrook) (gcc version 3.2 20020903 
(Red Hat Linux 8.0 3.2-7)) #2 Tue Jan 7 22:17:36 CST 2003

How reproducible:
Always

Steps to Reproduce:
1. Configure custom UP kernel as shown above
2. Check whether APIC mode is used on APIC-supporting system.

Actual Results:  Kernel is still using XT-PIC style interrupt handling.

Expected Results:  APIC interrupt handling mode is used like on Windows XP. 
This would likely provide a small performance boost, among other things.

Additional info:
Comment 1 Alan Cox 2003-06-05 10:15:16 EDT
The use of the APIC for interrupt routing depends on what tables are available.
Most likely this board only handles APIC with ACPI

Note You need to log in before you can comment on or make changes to this bug.