Re: SMP interrupt wierdness in Linux 2.6.8.1 - Interrupt Load Balancing not working
NOULARD Eric <[email protected]> Sun, 07 Nov 2004 14:12:03 +0100
| Newsgroups | org.kernel.vger.linux-smp |
|---|---|
| Message-ID | <[email protected]> |
I just compiled and booted 2.6.9
the result is almost identical interrupt seems to
goes only to CPU0 (excepted some of them ??)
My kernel config says:
CONFIG_IRQBALANCE=y
> cat /proc/interrupts
CPU0 CPU1
0: 6350285 14 IO-APIC-edge timer
1: 8647 0 IO-APIC-edge i8042
2: 0 0 XT-PIC cascade
5: 166414 0 IO-APIC-edge SoundBlaster
7: 1 1 IO-APIC-edge parport0
8: 0 1 IO-APIC-edge rtc
12: 176710 0 IO-APIC-edge i8042
16: 375735 0 IO-APIC-level r128@PCI:1:0:0
17: 29 1 IO-APIC-level aic7xxx
18: 110899 1 IO-APIC-level sym53c8xx, sym53c8xx
19: 26444 0 IO-APIC-level uhci_hcd, eth0
NMI: 0 0
LOC: 6350405 6350423
ERR: 0
MIS: 0
all /proc/irq/<irqno>/smp_affinity mask are set to 'ffffffff'?
I do not have any idea why this happen?
SideNote: My preceding irq sharing trouble disappeared when I switch
from MPS 1.1 to MPS 1.4 support in BIOS.
Le mar 02/11/2004 à 20:47, NOULARD Eric a écrit :
> I just have almost the same config ASUS-P2BD with 2xPIII 450MHz
> with the same symptoms, minus the running processes problem,
> plus one more suspect IRQ9 shared by most of PCI devices???
>
> I should give 2.6.9 a try with more careful config.
>
> Did you tried 2.6.9?
> Did you have the shared IRQ trouble?
>
> Note that in my case I have effectively
> 2 runnings processes at a time.
> Using top did you see the load of the 2 distinct CPU like this.
>
> My favourite test to check if I am effectively using both CPU
> is to run a simple multi-threaded C program that try to put
> one thread to SCHED_FIFO with max priority if your machine
> booted with one proc or could only use one as soon as you run
> the program your box will apparently freeze until the
> SCHED_FIFO thread terminates.
>
> If your box is not freezing you will be able to see
> (with top for example) that 1 processor is 100% used
> by the FIFO process.
>
>
> ----------------------
> top - 20:41:54 up 1:14, 8 users, load average: 0.39, 0.36, 0.32
> Tasks: 106 total, 3 running, 102 sleeping, 0 stopped, 1 zombie
> Cpu0 : 22.0% us, 3.6% sy, 0.0% ni, 74.0% id, 0.0% wa, 0.4% hi, 0.0%
> si
> Cpu1 : 22.5% us, 3.8% sy, 0.0% ni, 73.8% id, 0.0% wa, 0.0% hi,
> 0.0% si
> Mem: 449300k total, 416836k used, 32464k free, 45004k buffers
>
> -----------------------
>
> cat /proc/interrupts
> CPU0 CPU1
> 0: 4068279 12 IO-APIC-edge timer
> 1: 9892 0 IO-APIC-edge i8042
> 2: 0 0 XT-PIC cascade
> 5: 5344 1 IO-APIC-edge SoundBlaster
> 7: 1 1 IO-APIC-edge parport0
> 8: 1 0 IO-APIC-edge rtc
> 9: 229563 1 IO-APIC-level sym53c8xx, sym53c8xx,
> uhci_hcd, aic7xxx, eth0 11: 238198 1 IO-APIC-level
> r128@PCI:1:0:0
> 12: 119151 0 IO-APIC-edge i8042
> NMI: 0 0
> LOC: 4068215 4068222
> ERR: 0
> MIS: 0
>
>
> Le ven 29/10/2004 à 10:07, Lars Michael Jogbäck a écrit :
> > Hello,
> >
> > I've recently upgraded my SMP machine (2xPIII-500 on Asus P2B-D)
> > from Linux 2.4 to Linux 2.6.8.1 and now it seem's that the machine
> > only routes interrupts to one CPU. When loading the machine and
> > running top, I still only have seen 1 process in "Running" state
> > at the time. Should this be 2?
> >
> > I have CONFIG_IRQBALANCE=y and of course CONFIG_SMP=y
> >
> > lm@cleopatra:~$ cat /proc/interrupts
> > CPU0 CPU1
> > 0: 36751142 16 IO-APIC-edge timer
> > 1: 9 1 IO-APIC-edge i8042
> > 2: 0 0 XT-PIC cascade
> > 8: 3 0 IO-APIC-edge rtc
> > 14: 273037 1 IO-APIC-edge ide0
> > 15: 1189 0 IO-APIC-edge ide1
> > 16: 8561 1 IO-APIC-level sym53c8xx
> > 17: 40698 1 IO-APIC-level sym53c8xx
> > 18: 110871 8 IO-APIC-level ide2, ide3, ide4, ide5
> > 19: 219831 0 IO-APIC-level eth0
> > NMI: 0 0
> > LOC: 36752415 36752416
> > ERR: 0
> > MIS: 245
> >
> > When running 2.4 the interrupts was distributed between the two CPUs.
> >
> > The CPU's are indentical:
> > lm@cleopatra:~$ cat /proc/cpuinfo
> > processor : 0
> > vendor_id : GenuineIntel
> > cpu family : 6
> > model : 7
> > model name : Pentium III (Katmai)
> > stepping : 3
> > cpu MHz : 501.328
> > cache size : 512 KB
> > fdiv_bug : no
> > hlt_bug : no
> > f00f_bug : no
> > coma_bug : no
> > fpu : yes
> > fpu_exception : yes
> > cpuid level : 2
> > wp : yes
> > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge
> > mca cmov pat pse36 mmx fxsr sse
> > bogomips : 989.18
> >
> > processor : 1
> > vendor_id : GenuineIntel
> > cpu family : 6
> > model : 7
> > model name : Pentium III (Katmai)
> > stepping : 3
> > cpu MHz : 501.328
> > cache size : 512 KB
> > fdiv_bug : no
> > hlt_bug : no
> > f00f_bug : no
> > coma_bug : no
> > fpu : yes
> > fpu_exception : yes
> > cpuid level : 2
> > wp : yes
> > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge
> > mca cmov pat pse36 mmx fxsr sse
> > bogomips : 999.42
> >
> > Is there anyone out there who have an idea on where to start looking?
> >
> > Best Regards,
> > /LM
> >
> >
> >
> > -
> > To unsubscribe from this list: send the line "unsubscribe linux-smp" in
> > the body of a message to [email protected]
> > More majordomo info at http://vger.kernel.org/majordomo-info.html
--
Eric NOULARD
E-mail: [email protected]