[parisc-linux] Affined IRQs.
Thibaut VARÈNE
varenet@esiee.fr
Mon, 11 Aug 2003 15:44:02 +0200
Le lundi, 11 aoû 2003, à 14:33 Europe/Paris, Naresh a écrit :
> A couple of questions:
> 1. Do does this mean interrupts can go to any CPU?
there are several cases, depending on the hardware.
For instance, on A500, IRQs are distributed to both CPUs, on J5000,
only one of the two CPUs gets all IRQs.
This is IOSAPIC programmation that has to be reviewed:
on J5000:
[varenet@k2000 ~]$ uname -a
Linux k2000 2.4.20-pa18 #1 SMP Sun Jan 12 02:41:51 CET 2003 parisc64
GNU/Linux
[varenet@k2000 ~]$ cat /proc/interrupts
CPU00 CPU01
64: 1053803311 1053803113 PARISC-CPU timer
65: 2598316 12633504 PARISC-CPU IPI
66: 68320843 0 PARISC-CPU IO-SAPIC00-L2
67: 0 0 PARISC-CPU IO-SAPIC00-L3
68: 326 0 PARISC-CPU IO-SAPIC00-L0
69: 0 0 PARISC-CPU IO-SAPIC00-L1
70: 6616979 0 PARISC-CPU IO-SAPIC00-L1
128: 326 0 IO-SAPIC00 SuperIO
129: 6616979 0 IO-SAPIC00 sym53c8xx, sym53c8xx
130: 68320843 0 IO-SAPIC00 eth0
195: 323 0 SuperIO serial
199: 3 0 SuperIO ide0
on A500:
[varenet@mkhppa3 ~]$ uname -a
Linux mkhppa3 2.4.20-pa28 #1 SMP Sun Mar 9 23:56:53 CET 2003 parisc64
GNU/Linux
[varenet@mkhppa3 ~]$ cat /proc/interrupts
CPU00 CPU01
64: 727337429 727336565 PARISC-CPU timer
65: 31826972 39174091 PARISC-CPU IPI
66: 42581516 0 PARISC-CPU IO-SAPIC00-L0
67: 0 30 PARISC-CPU IO-SAPIC00-L1
68: 0 0 PARISC-CPU IO-SAPIC00-L2
69: 0 696338 PARISC-CPU IO-SAPIC00-L2
70: 3672511 0 PARISC-CPU IO-SAPIC00-L3
71: 0 209 PARISC-CPU IO-SAPIC00-L4
72: 0 0 PARISC-CPU IO-SAPIC00-L5
128: 42581516 0 IO-SAPIC00 eth0
129: 0 30 IO-SAPIC00 sym53c8xx
130: 0 696338 IO-SAPIC00 sym53c8xx, sym53c8xx
131: 3672511 0 IO-SAPIC00 sym53c8xx
132: 0 209 IO-SAPIC00 serial
> 2. If a CPU on an SMP system is stopped or its interrupts are blocked, =
> will
> its interrupts automatically be serviced on another online CPU, due to =
> their
> non-affining nature?
CPU deconfiguration is also on my todo list ;)
So you can't stop a CPU on a PARISC SMP system atm.
the second part of the question is an iodood (Grant Grundler ;)
question, but to my understanding IRQs won't probably be serviced by
another CPU unless the IOSAPIC is reprogrammed to do so.
HTH,
Thibaut VARENE
The PA/Linux ESIEE Team
http://pateam.esiee.fr/
> Regards,
> Naresh.
>
> Thibaut VARENE wrote:
>
>>> Hi,
>>> The IA-64 Linux kernel has a concept of affined IRQs, wherein IRQs =
>>> can
>>> be bound/affined to particular CPUs. The affinity information shows =
>>> up
>>> in '/proc/irq/#/smp_affinity'. I cannot see any affinity of IRQs to =
>>> CPUs
>>> in PA ( iosapic.c and irq.c).. Is my understanding correct?
>>> Regards,
>>> Naresh.
>>
>> This has to be implemented for parisc and is on my todo list ;)
>>
>> (BTW, on vacation till Aug 25th.)
>>
>> Thibaut VARENE
>> The PA/Linux ESIEE Team
>> http://pateam.esiee.fr/
>> _______________________________________________
>> parisc-linux mailing list
>> parisc-linux@lists.parisc-linux.org
>> http://lists.parisc-linux.org/mailman/listinfo/parisc-linux
>
>
>