URL
https://opencores.org/ocsvn/or1k/or1k/trunk
Details |
Compare with Previous |
View Log
Line No. |
Rev |
Author |
Line |
1 |
1275 |
phoenix |
|
2 |
|
|
SMP IRQ affinity, started by Ingo Molnar
|
3 |
|
|
|
4 |
|
|
|
5 |
|
|
/proc/irq/IRQ#/smp_affinity specifies which target CPUs are permitted
|
6 |
|
|
for a given IRQ source. It's a bitmask of allowed CPUs. It's not allowed
|
7 |
|
|
to turn off all CPUs, and if an IRQ controller does not support IRQ
|
8 |
|
|
affinity then the value will not change from the default 0xffffffff.
|
9 |
|
|
|
10 |
|
|
Here is an example of restricting IRQ44 (eth1) to CPU0-3 then restricting
|
11 |
|
|
the IRQ to CPU4-7 (this is an 8-CPU SMP box):
|
12 |
|
|
|
13 |
|
|
[root@moon 44]# cat smp_affinity
|
14 |
|
|
ffffffff
|
15 |
|
|
[root@moon 44]# echo 0f > smp_affinity
|
16 |
|
|
[root@moon 44]# cat smp_affinity
|
17 |
|
|
0000000f
|
18 |
|
|
[root@moon 44]# ping -f h
|
19 |
|
|
PING hell (195.4.7.3): 56 data bytes
|
20 |
|
|
...
|
21 |
|
|
--- hell ping statistics ---
|
22 |
|
|
6029 packets transmitted, 6027 packets received, 0% packet loss
|
23 |
|
|
round-trip min/avg/max = 0.1/0.1/0.4 ms
|
24 |
|
|
[root@moon 44]# cat /proc/interrupts | grep 44:
|
25 |
|
|
44: 0 1785 1785 1783 1783 1
|
26 |
|
|
1 0 IO-APIC-level eth1
|
27 |
|
|
[root@moon 44]# echo f0 > smp_affinity
|
28 |
|
|
[root@moon 44]# ping -f h
|
29 |
|
|
PING hell (195.4.7.3): 56 data bytes
|
30 |
|
|
..
|
31 |
|
|
--- hell ping statistics ---
|
32 |
|
|
2779 packets transmitted, 2777 packets received, 0% packet loss
|
33 |
|
|
round-trip min/avg/max = 0.1/0.5/585.4 ms
|
34 |
|
|
[root@moon 44]# cat /proc/interrupts | grep 44:
|
35 |
|
|
44: 1068 1785 1785 1784 1784 1069 1070 1069 IO-APIC-level eth1
|
36 |
|
|
[root@moon 44]#
|
37 |
|
|
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.