lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Fri, 12 Aug 2016 18:58:21 +0300
From:	Grygorii Strashko <grygorii.strashko@...com>
To:	Sebastian Andrzej Siewior <bigeasy@...utronix.de>
CC:	Steven Rostedt <rostedt@...dmis.org>, <linux-omap@...r.kernel.org>,
	Alison Chaiken <alison@...oton-tech.com>,
	<linux-rt-users@...r.kernel.org>, <netdev@...r.kernel.org>
Subject: Re: [4.4-RT PATCH RFC/RFT] drivers: net: cpsw: mark rx/tx irq as
 IRQF_NO_THREAD

Hi Sebastian,

On 08/12/2016 11:32 AM, Sebastian Andrzej Siewior wrote:
> On 2016-08-11 19:15:40 [+0300], Grygorii Strashko wrote:
>> Mark CPSW Rx/Tx IRQs as IRQF_NO_THREAD and avoid double scheduling on -RT
>> where this IRQs are forced threaded:
>>  rx-irq
>>   |- schedule threaded rx-irq handler
>> ...
>>   |- threaded rx-irq handler -> cpsw_rx_interrupt()
>>      |- napi_schedule()
>> 	|- __raise_softirq_irqoff()
>> 	   |- wakeup_proper_softirq()
>> ...
>>   napi
> 
> This should not be the default path. The default should be napi running
> in the context of the threaded rx-irq handler once the handler is done.
> The wakeup_proper_softirq() part is only done if napi thinks that the
> callback functions runs for too long. So in *that* case you continue
> NAPI in the softirq-thread which runs at SCHED_OTHER.

Thankds for comment. You're right:
irq_thread()->irq_forced_thread_fn()->local_bh_enable()

but wouldn't here two wake_up_process() calls any way,
plus preempt_check_resched_rt() in napi_schedule().

> 
>> after:
>>  rx-irq
>>   |- cpsw_rx_interrupt()
>>      |- napi_schedule()
>>   |- irq_exit()
>>      |- invoke_softirq()
>> 	   |- wakeup_softirqd()
>> ...
>>   napi
> 
> Since you schedule the softirq from an IRQ-off region / without a
> process context you force the softirq to run in the thread at
> SCHED_OTHER priority.

Thanks a lot for comments.
> 
>> And, as result, get benefits from the following improvements (tested
>> on am57xx-evm):
>>
>> 1) "[ 78.348599] NOHZ: local_softirq_pending 80" message will not be
>>    seen any more. Now these warnings can be seen once iperf is started.
>>    # iperf -c $IPERFHOST -w 128K  -d -t 60
> 
> Do you also see "sched: RT throttling activated"? Because I don't see
> otherwise why this should pop up.

I've reverted my patch an did requested experiments (some additional info below).

I do not see "sched: RT throttling activated" :(

root@...7xx-evm:~# ./net_perf.sh & cyclictest -m -Sp98 -q  -D4m
[1] 1301
# /dev/cpu_dma_latency set to 0us
Linux am57xx-evm 4.4.16-rt23-00321-ga195e6a-dirty #92 SMP PREEMPT RT Fri Aug 12 14:03:59 EEST 2016 armv7l GNU/Linux


------------------------------------------------------------
Server listening on TCP port 5001
TCP window size: 16.0 KByte (WARNING: requested 8.00 KByte)
------------------------------------------------------------
------------------------------------------------------------
Client connecting to 172.22.39.17, TCP port 5001
TCP window size: 16.0 KByte (WARNING: requested 8.00 KByte)
------------------------------------------------------------
[  3] local 172.22.39.21 port 47500 connected with 172.22.39.17 port 5001
[  5] local 172.22.39.21 port 5001 connected with 172.22.39.17 port 59955
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-60.0 sec  1.31 GBytes   188 Mbits/sec
[  5]  0.0-60.0 sec   868 MBytes   121 Mbits/sec
------------------------------------------------------------
Server listening on TCP port 5001
TCP window size: 32.0 KByte (WARNING: requested 16.0 KByte)
------------------------------------------------------------
------------------------------------------------------------
Client connecting to 172.22.39.17, TCP port 5001
TCP window size: 32.0 KByte (WARNING: requested 16.0 KByte)
------------------------------------------------------------
[  5] local 172.22.39.21 port 47502 connected with 172.22.39.17 port 5001
[  4] local 172.22.39.21 port 5001 connected with 172.22.39.17 port 59957
[ ID] Interval       Transfer     Bandwidth
[  5]  0.0-60.0 sec  1.92 GBytes   275 Mbits/sec
[  4]  0.0-60.0 sec  1.14 GBytes   163 Mbits/sec
------------------------------------------------------------
Server listening on TCP port 5001
TCP window size: 64.0 KByte (WARNING: requested 32.0 KByte)
------------------------------------------------------------
------------------------------------------------------------
Client connecting to 172.22.39.17, TCP port 5001
TCP window size: 64.0 KByte (WARNING: requested 32.0 KByte)
------------------------------------------------------------
[  5] local 172.22.39.21 port 47504 connected with 172.22.39.17 port 5001
[  4] local 172.22.39.21 port 5001 connected with 172.22.39.17 port 59965
[ 2285.928516] NOHZ: local_softirq_pending 80
[ 2285.928549] NOHZ: local_softirq_pending 80
[ 2285.928594] NOHZ: local_softirq_pending 80
[ 2285.928689] NOHZ: local_softirq_pending 80
[ 2286.348572] NOHZ: local_softirq_pending 80
[ 2290.358623] NOHZ: local_softirq_pending 80
[ 2291.588624] NOHZ: local_softirq_pending 80
[ 2291.698579] NOHZ: local_softirq_pending 80
[ 2292.608594] NOHZ: local_softirq_pending 80
[ 2293.178627] NOHZ: local_softirq_pending 80
[ ID] Interval       Transfer     Bandwidth
[  5]  0.0-60.0 sec  1.43 GBytes   205 Mbits/sec
[  4]  0.0-60.0 sec  1.58 GBytes   226 Mbits/sec
------------------------------------------------------------
Server listening on TCP port 5001
TCP window size:  128 KByte (WARNING: requested 64.0 KByte)
------------------------------------------------------------
------------------------------------------------------------
Client connecting to 172.22.39.17, TCP port 5001
TCP window size:  128 KByte (WARNING: requested 64.0 KByte)
------------------------------------------------------------
[  5] local 172.22.39.21 port 47506 connected with 172.22.39.17 port 5001
[  4] local 172.22.39.21 port 5001 connected with 172.22.39.17 port 59980
T: 0 ( 1309) P:98 I:1000 C: 240000 Min:      8 Act:   13 Avg:   18 Max:      60
T: 1 ( 1310) P:98 I:1500 C: 159968 Min:      8 Act:   14 Avg:   16 Max:      58
root@...7xx-evm:~# [ ID] Interval       Transfer     Bandwidth
[  5]  0.0-60.0 sec  1.84 GBytes   264 Mbits/sec
[  4]  0.0-60.0 sec  1.47 GBytes   210 Mbits/sec
------------------------------------------------------------
Server listening on TCP port 5001
TCP window size:  256 KByte (WARNING: requested  128 KByte)
------------------------------------------------------------
------------------------------------------------------------
Client connecting to 172.22.39.17, TCP port 5001
TCP window size:  256 KByte (WARNING: requested  128 KByte)
------------------------------------------------------------
[  5] local 172.22.39.21 port 47508 connected with 172.22.39.17 port 5001
[  4] local 172.22.39.21 port 5001 connected with 172.22.39.17 port 59982
[ ID] Interval       Transfer     Bandwidth
[  5]  0.0-60.0 sec   974 MBytes   136 Mbits/sec
[  4]  0.0-60.0 sec  2.84 GBytes   406 Mbits/sec

[1]+  Done                    ./net_perf.sh



> 
>> 2) latency reduction when cyclictest is run in parallel with network load
>>  where net_perf.sh is:
>>    iperf -c $IPERFHOST -w 8K    -d -t 60
>>    iperf -c $IPERFHOST -w 16K   -d -t 60
>>    iperf -c $IPERFHOST -w 32K   -d -t 60
>>    iperf -c $IPERFHOST -w 64K   -d -t 60
>>    iperf -c $IPERFHOST -w 128K  -d -t 60
>>
>> before:
>> T: 0 ( 1326) P:98 I:1000 C: 240000 Min:      8 Act:   13 Avg:   18 Max:      70
>> T: 1 ( 1327) P:98 I:1500 C: 159981 Min:      9 Act:   15 Avg:   16 Max:      43
>> after:
>> T: 0 ( 1331) P:98 I:1000 C: 240000 Min:      8 Act:   15 Avg:   14 Max:      51
>> T: 1 ( 1332) P:98 I:1500 C: 159953 Min:      8 Act:   16 Avg:   15 Max:      33
> 
> -d 0 to have I: set to the same value.
> What does -i 250 say?
> And without network load we are where we were at "after" values?

=============================================== before, no net load:
cyclictest -m -Sp98 -q  -D4m
# /dev/cpu_dma_latency set to 0us
T: 0 ( 1270) P:98 I:1000 C: 240000 Min:      8 Act:   10 Avg:    9 Max:      38
T: 1 ( 1271) P:98 I:1500 C: 159986 Min:      8 Act:   10 Avg:    9 Max:      23

cyclictest -m -Sp98 -q  -D4m -d0
# /dev/cpu_dma_latency set to 0us
T: 0 ( 1280) P:98 I:1000 C: 240000 Min:      8 Act:   10 Avg:    9 Max:      27
T: 1 ( 1281) P:98 I:1000 C: 239982 Min:      8 Act:   13 Avg:    9 Max:      26

cyclictest -m -Sp98 -q  -D4m -i250
# /dev/cpu_dma_latency set to 0us
T: 0 ( 1284) P:98 I:250 C: 960000 Min:      8 Act:   10 Avg:    8 Max:      24
T: 1 ( 1285) P:98 I:750 C: 319977 Min:      8 Act:   11 Avg:    9 Max:      21

cyclictest -m -Sp98 -q  -D4m -i250 -d0
# /dev/cpu_dma_latency set to 0us
T: 0 ( 1288) P:98 I:250 C: 960000 Min:      8 Act:    9 Avg:    8 Max:      33
T: 1 ( 1289) P:98 I:250 C: 959929 Min:      7 Act:   11 Avg:    9 Max:      26

=============================================== before, with net load:
cyclictest -m -Sp98 -q  -D4m
T: 0 ( 1309) P:98 I:1000 C: 240000 Min:      8 Act:   13 Avg:   18 Max:      60
T: 1 ( 1310) P:98 I:1500 C: 159968 Min:      8 Act:   14 Avg:   16 Max:      58

cyclictest -m -Sp98 -q -D4m -d0
T: 0 ( 1339) P:98 I:1000 C: 240000 Min:      8 Act:   28 Avg:   18 Max:      60
T: 1 ( 1340) P:98 I:1000 C: 239969 Min:      8 Act:   25 Avg:   16 Max:      43

cyclictest -m -Sp98 -q -D4m -i250
T: 0 ( 1369) P:98 I:250 C: 960000 Min:      8 Act:   13 Avg:   17 Max:      64
T: 1 ( 1370) P:98 I:750 C: 319941 Min:      8 Act:   18 Avg:   16 Max:      56

cyclictest -m -Sp98 -q -D4m -i250 -d0
T: 0 ( 1400) P:98 I:250 C: 960000 Min:      8 Act:   25 Avg:   18 Max:      83
T: 1 ( 1401) P:98 I:250 C: 959801 Min:      7 Act:   27 Avg:   17 Max:      48

=============================================== after, no net load:

cyclictest -m -Sp98 -q  -D4m 
T: 0 ( 1287) P:98 I:1000 C: 240000 Min:      8 Act:   10 Avg:    9 Max:      30
T: 1 ( 1288) P:98 I:1500 C: 159987 Min:      8 Act:   13 Avg:   10 Max:      32

cyclictest -m -Sp98 -q -D4m -d0  
T: 0 ( 1295) P:98 I:1000 C: 240000 Min:      8 Act:    8 Avg:    9 Max:      39
T: 1 ( 1296) P:98 I:1000 C: 239981 Min:      7 Act:    9 Avg:    8 Max:      29

cyclictest -m -Sp98 -q  -D4m -i250
T: 0 ( 1298) P:98 I:250 C: 960000 Min:      7 Act:    8 Avg:    9 Max:      42
T: 1 ( 1299) P:98 I:750 C: 319970 Min:      8 Act:    9 Avg:    8 Max:      29

cyclictest -m -Sp98 -q  -D4m -i250 -d0
T: 0 ( 1301) P:98 I:250 C: 960000 Min:      7 Act:    9 Avg:    8 Max:      22
T: 1 ( 1302) P:98 I:250 C: 959914 Min:      7 Act:   11 Avg:    8 Max:      28

=============================================== after, with net load:
cyclictest -m -Sp98 -q  -D4m 
T: 0 ( 1315) P:98 I:1000 C: 240000 Min:      8 Act:   11 Avg:   14 Max:      40
T: 1 ( 1316) P:98 I:1500 C: 159962 Min:      8 Act:   19 Avg:   15 Max:      38


cyclictest -m -Sp98 -q -D4m -d0  
T: 0 ( 1365) P:98 I:1000 C: 240000 Min:      8 Act:   14 Avg:   15 Max:      51
T: 1 ( 1366) P:98 I:1000 C: 239943 Min:      8 Act:   18 Avg:   15 Max:      36

cyclictest -m -Sp98 -q  -D4m -i250
T: 0 ( 1309) P:98 I:250 C: 960000 Min:      8 Act:   15 Avg:   13 Max:      42
T: 1 ( 1310) P:98 I:750 C: 319986 Min:      8 Act:   18 Avg:   15 Max:      36

cyclictest -m -Sp98 -q  -D4m -i250 -d0
T: 0 ( 1358) P:98 I:250 C: 960000 Min:      8 Act:   11 Avg:   14 Max:      42
T: 1 ( 1359) P:98 I:250 C: 959743 Min:      7 Act:   18 Avg:   15 Max:      36

> 
> What happens if s/__raise_softirq_irqoff_ksoft/__raise_softirq_irqoff/
> in net/core/dev.c and chrt the priority of you network interrupt
> handlers to SCHED_OTHER priority?

===== without this patch + __raise_softirq_irqoff + netIRQs->SCHED_OTHER

with net load:
cyclictest -m -Sp98 -q -D4m -i250 -d0
T: 0 ( 1325) P:98 I:1000 C: 240000 Min:      8 Act:   22 Avg:   17 Max:      51
T: 1 ( 1326) P:98 I:1500 C: 159981 Min:      8 Act:   15 Avg:   15 Max:      39

cyclictest -m -Sp98 -q  -D4m -i250 -d0
T: 0 ( 1307) P:98 I:250 C: 960000 Min:      7 Act:   13 Avg:   16 Max:      50
T: 1 ( 1308) P:98 I:250 C: 959819 Min:      8 Act:   12 Avg:   14 Max:      37

and net parformance is better:
root@...7xx-evm:~# ps -A | grep 4848
   82 ?        00:00:00 irq/354-4848400
   83 ?        00:00:00 irq/355-4848400
root@...7xx-evm:~# chrt -o -p 0 82
root@...7xx-evm:~# chrt -o -p 0 83
./net_perf.sh & cyclictest -m -Sp98 -q  -D4m -i250 -d0
[1] 1298
# /dev/cpu_dma_latency set to 0us
Linux am57xx-evm 4.4.16-rt23-00321-ga195e6a-dirty #95 SMP PREEMPT RT Fri Aug 12 16:20:42 EEST 2016 armv7l GNU/Linux


------------------------------------------------------------
Server listening on TCP port 5001
TCP window size: 16.0 KByte (WARNING: requested 8.00 KByte)
------------------------------------------------------------
------------------------------------------------------------
Client connecting to 172.22.39.17, TCP port 5001
TCP window size: 16.0 KByte (WARNING: requested 8.00 KByte)
------------------------------------------------------------
[  3] local 172.22.39.21 port 58672 connected with 172.22.39.17 port 5001
[  5] local 172.22.39.21 port 5001 connected with 172.22.39.17 port 60672
[   78.718828] NOHZ: local_softirq_pending 80
[   78.908849] NOHZ: local_softirq_pending 80
[   78.908927] NOHZ: local_softirq_pending 80
[   78.918827] NOHZ: local_softirq_pending 80
[   79.058826] NOHZ: local_softirq_pending 80
[   81.488918] NOHZ: local_softirq_pending 80
[   81.489162] NOHZ: local_softirq_pending 80
[   81.489398] NOHZ: local_softirq_pending 80
[   81.489646] NOHZ: local_softirq_pending 80
[   81.489895] NOHZ: local_softirq_pending 80
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-60.0 sec  1.30 GBytes   187 Mbits/sec
[  5]  0.0-60.0 sec   637 MBytes  89.0 Mbits/sec
------------------------------------------------------------
Server listening on TCP port 5001
TCP window size: 32.0 KByte (WARNING: requested 16.0 KByte)
------------------------------------------------------------
------------------------------------------------------------
Client connecting to 172.22.39.17, TCP port 5001
TCP window size: 32.0 KByte (WARNING: requested 16.0 KByte)
------------------------------------------------------------
[  5] local 172.22.39.21 port 58674 connected with 172.22.39.17 port 5001
[  4] local 172.22.39.21 port 5001 connected with 172.22.39.17 port 60680
[ ID] Interval       Transfer     Bandwidth
[  5]  0.0-60.0 sec  1.78 GBytes   255 Mbits/sec
[  4]  0.0-60.0 sec  1.47 GBytes   210 Mbits/sec
------------------------------------------------------------
Server listening on TCP port 5001
TCP window size: 64.0 KByte (WARNING: requested 32.0 KByte)
------------------------------------------------------------
------------------------------------------------------------
Client connecting to 172.22.39.17, TCP port 5001
TCP window size: 64.0 KByte (WARNING: requested 32.0 KByte)
------------------------------------------------------------
[  5] local 172.22.39.21 port 58676 connected with 172.22.39.17 port 5001
[  4] local 172.22.39.21 port 5001 connected with 172.22.39.17 port 60693
[ ID] Interval       Transfer     Bandwidth
[  5]  0.0-60.0 sec  1.62 GBytes   232 Mbits/sec
[  4]  0.0-60.0 sec  2.07 GBytes   296 Mbits/sec
------------------------------------------------------------
Server listening on TCP port 5001
TCP window size:  128 KByte (WARNING: requested 64.0 KByte)
------------------------------------------------------------
------------------------------------------------------------
Client connecting to 172.22.39.17, TCP port 5001
TCP window size:  128 KByte (WARNING: requested 64.0 KByte)
------------------------------------------------------------
[  5] local 172.22.39.21 port 58678 connected with 172.22.39.17 port 5001
[  4] local 172.22.39.21 port 5001 connected with 172.22.39.17 port 60702
T: 0 ( 1307) P:98 I:250 C: 960000 Min:      7 Act:   13 Avg:   16 Max:      50
T: 1 ( 1308) P:98 I:250 C: 959819 Min:      8 Act:   12 Avg:   14 Max:      37
root@...7xx-evm:~# [ ID] Interval       Transfer     Bandwidth
[  5]  0.0-60.0 sec  1.77 GBytes   254 Mbits/sec
[  4]  0.0-60.0 sec  1.77 GBytes   253 Mbits/sec
------------------------------------------------------------
Server listening on TCP port 5001
TCP window size:  256 KByte (WARNING: requested  128 KByte)
------------------------------------------------------------
------------------------------------------------------------
Client connecting to 172.22.39.17, TCP port 5001
TCP window size:  256 KByte (WARNING: requested  128 KByte)
------------------------------------------------------------
[  5] local 172.22.39.21 port 58680 connected with 172.22.39.17 port 5001
[  4] local 172.22.39.21 port 5001 connected with 172.22.39.17 port 60711
[ ID] Interval       Transfer     Bandwidth
[  5]  0.0-60.0 sec  2.18 GBytes   312 Mbits/sec
[  4]  0.0-60.0 sec  2.53 GBytes   362 Mbits/sec


> 
>> 3) network performance increase
>>
>> win, K	Mbits/s
>> 	before	after	%
>> 8K	354	350.3	0.0
>> 16K	412	551	33.7 
>> 32K	423	659.5	55.9 
>> 64K	436	728.3	67.0 
>> 128K	537	845	57.4 
> 
> How close are the after numbers to !RT?

http://processors.wiki.ti.com/index.php/Processor_SDK_Linux_Kernel_Performance_Guide#AM57XX_TCP_Performance

Min 20% drop even with this patch :(

-- 
regards,
-grygorii


========================= ps -l -A (after boot)
root@...7xx-evm:~# ps -l -A
F S   UID   PID  PPID  C PRI  NI ADDR SZ WCHAN  TTY          TIME CMD
4 S     0     1     0  1  80   0 -  1321 SyS_ep ?        00:00:05 systemd
1 S     0     2     0  0  80   0 -     0 kthrea ?        00:00:00 kthreadd
1 S     0     3     2  0  80   0 -     0 smpboo ?        00:00:00 ksoftirqd/0
5 S     0     4     2  0  58   - -     0 smpboo ?        00:00:00 ktimersoftd/0
1 S     0     5     2  0  80   0 -     0 worker ?        00:00:00 kworker/0:0
1 S     0     6     2  0  60 -20 -     0 worker ?        00:00:00 kworker/0:0H
1 S     0     7     2  0  80   0 -     0 worker ?        00:00:00 kworker/u4:0
1 S     0     8     2  0  58   - -     0 rcu_gp ?        00:00:00 rcu_preempt
1 S     0     9     2  0  58   - -     0 rcu_gp ?        00:00:00 rcu_sched
1 S     0    10     2  0  58   - -     0 rcu_bo ?        00:00:00 rcub/0
1 S     0    11     2  0  58   - -     0 smpboo ?        00:00:00 rcuc/0
1 S     0    12     2  0  80   0 -     0 run_cl ?        00:00:00 kclksetdelayd
1 S     0    13     2  0 -40   - -     0 posix_ ?        00:00:00 posixcputmr/0
1 S     0    14     2  0  80   0 -     0 run_cm ?        00:00:00 kcmosdelayd
1 S     0    15     2  0 -40   - -     0 smpboo ?        00:00:00 migration/0
1 S     0    16     2  0 -40   - -     0 smpboo ?        00:00:00 migration/1
1 S     0    17     2  0  58   - -     0 smpboo ?        00:00:00 rcuc/1
5 S     0    18     2  0  58   - -     0 smpboo ?        00:00:00 ktimersoftd/1
1 S     0    19     2  0  80   0 -     0 smpboo ?        00:00:00 ksoftirqd/1
1 S     0    20     2  0 -40   - -     0 posix_ ?        00:00:00 posixcputmr/1
1 S     0    21     2  0  80   0 -     0 worker ?        00:00:00 kworker/1:0
1 S     0    22     2  0  60 -20 -     0 worker ?        00:00:00 kworker/1:0H
5 S     0    23     2  0  80   0 -     0 devtmp ?        00:00:00 kdevtmpfs
1 S     0    24     2  0  80   0 -     0 swork_ ?        00:00:00 kswork
1 S     0    25     2  0  60 -20 -     0 rescue ?        00:00:00 perf
1 S     0    26     2  0   9   - -     0 irq_th ?        00:00:00 irq/37-4ae10000
1 S     0    27     2  0  80   0 -     0 worker ?        00:00:00 kworker/0:1
1 S     0    28     2  0   9   - -     0 irq_th ?        00:00:00 irq/70-48055000
1 S     0    29     2  0   9   - -     0 irq_th ?        00:00:00 irq/103-4805700
1 S     0    30     2  0   9   - -     0 irq_th ?        00:00:00 irq/136-4805900
1 S     0    31     2  0   9   - -     0 irq_th ?        00:00:00 irq/169-4805b00
1 S     0    32     2  0   9   - -     0 irq_th ?        00:00:00 irq/202-4805d00
1 S     0    33     2  0   9   - -     0 irq_th ?        00:00:00 irq/235-4805100
1 S     0    34     2  0   9   - -     0 irq_th ?        00:00:00 irq/268-4805300
1 S     0    35     2  0  60 -20 -     0 rescue ?        00:00:00 writeback
1 S     0    36     2  0  60 -20 -     0 rescue ?        00:00:00 crypto
1 S     0    37     2  0  60 -20 -     0 rescue ?        00:00:00 bioset
1 S     0    38     2  0  60 -20 -     0 rescue ?        00:00:00 kblockd
1 S     0    39     2  0   9   - -     0 irq_th ?        00:00:00 irq/29-omap-dma
1 S     0    40     2  0   9   - -     0 irq_th ?        00:00:00 irq/32-43300000
1 S     0    41     2  0   9   - -     0 irq_th ?        00:00:00 irq/34-43300000
1 S     0    42     2  0   9   - -     0 irq_th ?        00:00:00 irq/343-40d0100
1 S     0    43     2  0   9   - -     0 irq_th ?        00:00:00 irq/344-40d0200
1 S     0    44     2  0   9   - -     0 irq_th ?        00:00:00 irq/345-5888200
1 S     0    45     2  0   9   - -     0 irq_th ?        00:00:00 irq/346-5508200
1 S     0    46     2  0   9   - -     0 irq_th ?        00:00:00 irq/363-4150100
1 S     0    47     2  0   9   - -     0 irq_th ?        00:00:00 irq/364-4150200
1 S     0    48     2  0   9   - -     0 irq_th ?        00:00:00 irq/337-4807000
1 S     0    49     2  0   9   - -     0 irq_th ?        00:00:00 irq/38-palmas
1 S     0    50     2  0   9   - -     0 irq_th ?        00:00:00 irq/338-4806000
1 S     0    51     2  0   9   - -     0 irq_th ?        00:00:00 irq/339-4807c00
1 S     0    52     2  0  60 -20 -     0 rescue ?        00:00:00 edac-poller
1 S     0    53     2  0  60 -20 -     0 rescue ?        00:00:00 rpciod
1 S     0    54     2  0  80   0 -     0 kswapd ?        00:00:00 kswapd0
1 S     0    55     2  0  60 -20 -     0 rescue ?        00:00:00 vmstat
1 S     0    56     2  0  80   0 -     0 fsnoti ?        00:00:00 fsnotify_mark
1 S     0    57     2  0  60 -20 -     0 rescue ?        00:00:00 nfsiod
1 S     0    66     2  0   9   - -     0 irq_th ?        00:00:00 irq/25-dra7xx-p
1 S     0    67     2  0   9   - -     0 irq_th ?        00:00:00 irq/437-PCIe PM
1 S     0    68     2  0   9   - -     0 irq_th ?        00:00:00 irq/437-aerdrv
1 S     0    69     2  0   9   - -     0 irq_th ?        00:00:00 irq/370-OMAP HD
1 S     0    70     2  0  60 -20 -     0 rescue ?        00:00:00 bioset
1 S     0    71     2  0  60 -20 -     0 rescue ?        00:00:00 bioset
1 S     0    72     2  0  60 -20 -     0 rescue ?        00:00:00 bioset
1 S     0    73     2  0  60 -20 -     0 rescue ?        00:00:00 bioset
1 S     0    74     2  0  60 -20 -     0 rescue ?        00:00:00 bioset
1 S     0    75     2  0  60 -20 -     0 rescue ?        00:00:00 bioset
1 S     0    76     2  0  60 -20 -     0 rescue ?        00:00:00 bioset
1 S     0    77     2  0  60 -20 -     0 rescue ?        00:00:00 bioset
1 S     0    78     2  0  80   0 -     0 worker ?        00:00:00 kworker/u4:1
1 S     0    81     2  0  80   0 -     0 worker ?        00:00:01 kworker/1:1
1 S     0    82     2  0   9   - -     0 irq_th ?        00:00:00 irq/354-4848400
1 S     0    83     2  0   9   - -     0 irq_th ?        00:00:00 irq/355-4848400
1 S     0    84     2  0  60 -20 -     0 rescue ?        00:00:00 kpsmoused
1 S     0    85     2  0   9   - -     0 irq_th ?        00:00:00 irq/27-talert
1 S     0    86     2  0   9   - -     0 irq_th ?        00:00:00 irq/340-mmc0
1 S     0    87     2  0   9   - -     0 irq_th ?        00:00:00 irq/230-4809c00
1 S     0    88     2  0   9   - -     0 irq_th ?        00:00:00 irq/341-mmc1
1 S     0    89     2  0   9   - -     0 irq_th ?        00:00:00 irq/342-mmc2
1 S     0    90     2  0   9   - -     0 irq_th ?        00:00:00 irq/352-4846800
1 S     0    91     2  0   9   - -     0 irq_th ?        00:00:00 irq/351-4846800
1 S     0    92     2  0  60 -20 -     0 rescue ?        00:00:00 ipv6_addrconf
1 S     0    93     2  0   9   - -     0 irq_th ?        00:00:00 irq/335-omap_dm
1 S     0    94     2  0   9   - -     0 irq_th ?        00:00:00 irq/369-OMAP DI
1 S     0    95     2  0  60 -20 -     0 rescue ?        00:00:00 bioset
1 S     0    96     2  0  80   0 -     0 mmc_qu ?        00:00:00 mmcqd/0
1 S     0    97     2  0  60 -20 -     0 rescue ?        00:00:00 bioset
1 S     0    98     2  0  80   0 -     0 mmc_qu ?        00:00:00 mmcqd/1
1 S     0    99     2  0  60 -20 -     0 rescue ?        00:00:00 bioset
1 S     0   100     2  0  80   0 -     0 mmc_qu ?        00:00:00 mmcqd/1boot0
1 S     0   101     2  0  60 -20 -     0 rescue ?        00:00:00 bioset
1 S     0   102     2  0  80   0 -     0 mmc_qu ?        00:00:00 mmcqd/1boot1
1 S     0   103     2  0  60 -20 -     0 rescue ?        00:00:00 deferwq
1 S     0   104     2  0   9   - -     0 irq_th ?        00:00:00 irq/94-Up
1 S     0   105     2  0   9   - -     0 irq_th ?        00:00:00 irq/96-Down
1 S     0   106     2  0   9   - -     0 irq_th ?        00:00:00 irq/99-Left
1 S     0   107     2  0   9   - -     0 irq_th ?        00:00:00 irq/95-Right
1 S     0   110     2  0  60 -20 -     0 worker ?        00:00:00 kworker/1:1H
1 S     0   111     2  0  80   0 -     0 kjourn ?        00:00:00 jbd2/mmcblk0p2-
1 S     0   112     2  0  60 -20 -     0 rescue ?        00:00:00 ext4-rsv-conver
1 S     0   129     2  0  60 -20 -     0 worker ?        00:00:00 kworker/0:1H
1 S     0   165     2  0  80   0 -     0 worker ?        00:00:00 kworker/0:2
1 S     0   168     2  0  80   0 -     0 worker ?        00:00:00 kworker/1:2
4 S     0   197     1  0  80   0 -  2566 SyS_ep ?        00:00:01 systemd-journal
1 S     0   249     2  0  80   0 -     0 worker ?        00:00:00 kworker/u4:2
1 S     0   255     2  0  80   0 -     0 worker ?        00:00:00 kworker/0:3
4 S     0   289     1  0  80   0 -  2731 SyS_ep ?        00:00:02 systemd-udevd
1 S     0   330     2  0  80   0 -     0 worker ?        00:00:00 kworker/0:4
1 S     0   339     2  0  80   0 -     0 worker ?        00:00:00 kworker/0:5
1 S     0   387     2  0   9   - -     0 irq_th ?        00:00:00 irq/362-4809000
1 S     0   407     2  0   9   - -     0 irq_th ?        00:00:00 irq/470-2-006f
1 S     0   409     2  0   9   - -     0 irq_th ?        00:00:00 irq/469-mcp7941
1 S     0   413     2  0   9   - -     0 irq_th ?        00:00:00 irq/75-pixcir_t
4 S   998   418     1  0  80   0 -  3038 SyS_ep ?        00:00:00 systemd-timesyn
1 S     0   429     2  0   9   - -     0 irq_th ?        00:00:00 irq/158-palmas_
1 S     0   462     2  0   9   - -     0 irq_th ?        00:00:00 irq/348-rtc2
1 S     0   464     2  0   9   - -     0 irq_th ?        00:00:00 irq/349-dwc3-om
1 S     0   466     2  0   9   - -     0 irq_th ?        00:00:00 irq/350-dwc3-om
1 S     0   493     2  0   9   - -     0 irq_th ?        00:00:00 irq/357-vpe
1 S     0   503     2  0  60 -20 -     0 rescue ?        00:00:00 ata_sff
1 S     0   509     2  0   9   - -     0 irq_th ?        00:00:00 irq/365-vip2-s0
1 S     0   510     2  0   9   - -     0 irq_th ?        00:00:00 irq/366-vip2-s1
1 S     0   514     2  0   9   - -     0 irq_th ?        00:00:00 irq/347-4a14000
1 S     0   516     2  0  80   0 -     0 scsi_e ?        00:00:00 scsi_eh_0
1 S     0   517     2  0  60 -20 -     0 rescue ?        00:00:00 scsi_tmf_0
1 S     0   595     2  0   9   - -     0 irq_th ?        00:00:00 irq/361-4b10100
1 S     0   605     2  0  80   0 -     0 worker ?        00:00:00 kworker/u4:3
4 S     0   765     1  0  80   0 -   498 poll_s ?        00:00:00 starter
4 S     0   792     1  0  80   0 -   497 syslog ?        00:00:00 klogd
4 S     0   819     1  0  80   0 -  2210 poll_s ?        00:00:01 ofonod
1 S     0   825     2  0  80   0 -     0 worker ?        00:00:02 kworker/1:3
1 S     0   887     2  0   9   - -     0 irq_th ?        00:00:00 irq/313-mbox_ip
4 S     0   900   765  0  80   0 - 35826 sigtim ?        00:00:00 charon
4 S   995   901     1  0  80   0 -  1164 poll_s ?        00:00:00 avahi-daemon
1 S     0   902     2  0   9   - -     0 irq_th ?        00:00:00 irq/317-mbox_ip
1 S     0   903     2  0   9   - -     0 irq_th ?        00:00:00 irq/321-rproc-w
1 S     0   904     2  0   9   - -     0 irq_th ?        00:00:00 irq/326-rproc-w
1 S     0   909     2  0   9   - -     0 irq_th ?        00:00:00 irq/313-mbox_ds
1 S   995   910   901  0  80   0 -  1164 unix_s ?        00:00:00 avahi-daemon
4 S     0   911     1  0  80   0 -   501 skb_re ?        00:00:00 syslogd
1 S     0   912     2  0   9   - -     0 irq_th ?        00:00:00 irq/317-mbox_ds
1 S     0   929     2  0   9   - -     0 irq_th ?        00:00:00 irq/490-remotep
1 S     0   930     2  0   9   - -     0 irq_th ?        00:00:00 irq/492-remotep
1 S     0   931     2  0   9   - -     0 irq_th ?        00:00:00 irq/494-remotep
1 S     0   934     2  0   9   - -     0 irq_th ?        00:00:00 irq/496-remotep
4 S   999   938     1  0  80   0 -  1080 SyS_ep ?        00:00:00 dbus-daemon
4 S   997   948     1  0  80   0 -  2725 SyS_ep ?        00:00:00 systemd-network
4 S     0   970     1  0  80   0 -   656 SyS_ep ?        00:00:00 systemd-logind
1 S     0  1006     2  0   9   - -     0 irq_th ?        00:00:00 irq/472-xhci-hc
4 S     0  1035     1  0  80   0 -  1221 wait   ttyS2    00:00:00 login
4 S     0  1036     1  0  80   0 -   447 poll_s tty1     00:00:00 agetty
4 S   996  1040     1  0  80   0 -   754 SyS_ep ?        00:00:00 systemd-resolve
4 S     0  1048     1  0  80   0 -  1143 SyS_ep ?        00:00:00 lighttpd
5 S     0  1176     1  0  80   0 -   497 poll_s ?        00:00:00 telnetd
5 S     0  1177     1  0  80   0 -  2441 pipe_w ?        00:00:00 lad_dra7xx
5 S 65534  1190     1  0  80   0 -   614 poll_s ?        00:00:00 thttpd
5 S     0  1199     1  0  80   0 -   581 poll_s ?        00:00:00 rngd
1 S     0  1241     2  0   9   - -     0 irq_th ?        00:00:00 irq/91-48020000
1 S     0  1242     2  0   9   - -     0 irq_th ?        00:00:00 irq/301-4802000
4 S     0  1248     1  0  80   0 -  1354 SyS_ep ?        00:00:00 systemd
5 S     0  1252  1248  0  80   0 -  1854 sigtim ?        00:00:00 (sd-pam)
4 S     0  1259  1035  0  80   0 -   676 wait   ttyS2    00:00:00 sh
0 R     0  1263  1259  0  80   0 -   553 -      ttyS2    00:00:00 ps

========================= /proc/interrupts & /proc/softirqs (after boot)
root@...7xx-evm:~# cat /proc/interrupts 
           CPU0       CPU1       
 16:          0          0      CBAR  32 Level     gp_timer
 19:      30322      29398       GIC  27 Edge      arch_timer
 22:          0          0      CBAR   4 Level     l3-dbg-irq
 23:          0          0     WUGEN  10 Level     l3-app-irq
 25:          7          0      CBAR 232 Level     dra7xx-pcie-main
 26:          0          0      CBAR 233 Level     dra7-pcie-msi
 27:          1          0      CBAR 121 Level     talert
 29:         57          0      CBAR   8 Level     omap-dma-engine
 32:        583          0      CBAR 361 Level     43300000.edma_ccint
 34:          0          0      CBAR 359 Level     43300000.edma_ccerrint
 37:          0          0      CBAR  24 Level     4ae10000.gpio
 38:          0          0  4ae10000.gpio   0 Level     palmas
 70:          1          0      CBAR  25 Level     48055000.gpio
 75:          0          1  48055000.gpio   4 Edge      pixcir_tangoc
 91:          0          0  48055000.gpio  20 Edge      48020000.serial
 94:          0          0  48055000.gpio  23 Edge      Up
 95:          0          0  48055000.gpio  24 Edge      Right
 96:          0          0  48055000.gpio  25 Edge      Down
 99:          0          0  48055000.gpio  28 Edge      Left
103:          0          0      CBAR  26 Level     48057000.gpio
136:          0          0      CBAR  27 Level     48059000.gpio
158:          0          0  48059000.gpio  21 Edge      palmas_usb_vbus
169:          0          0      CBAR  28 Level     4805b000.gpio
202:          0          0      CBAR  29 Level     4805d000.gpio
230:          0          0  4805d000.gpio  27 Edge      4809c000.mmc cd
235:          0          0      CBAR  30 Level     48051000.gpio
268:          0          0      CBAR 116 Level     48053000.gpio
301:        552          0      CBAR  69 Level     48020000.serial
313:         50          0      CBAR 251 Level     mbox_ipu1_ipc3x, mbox_dsp1_ipc3x
317:         60          0      CBAR 255 Level     mbox_ipu2_ipc3x, mbox_dsp2_ipc3x
321:          0          0      CBAR  35 Level     rproc-wdt
326:          0          0      CBAR  40 Level     rproc-wdt
335:          8          0      CBAR 108 Level     omap_dmm_irq_handler
337:       1888          0      CBAR  51 Level     48070000.i2c
338:         40          0      CBAR  56 Level     48060000.i2c
339:         28          0      CBAR  55 Level     4807c000.i2c
340:      12831          0      CBAR  78 Level     mmc0
341:       1473          0      CBAR  81 Level     mmc1
342:         13          0      CBAR  89 Level     mmc2
343:          0          0      CBAR  23 Level     40d01000.mmu
344:          0          0      CBAR 145 Level     40d02000.mmu
345:          0          0      CBAR 395 Level     58882000.mmu
346:          0          0      CBAR 396 Level     55082000.mmu
347:          0          0      CBAR  49 Level     4a140000.sata
348:          0          0      CBAR 217 Level     rtc2
349:          5          0      CBAR  72 Level     dwc3-omap
350:          2          0      CBAR  87 Level     dwc3-omap
351:          0          0      CBAR 151 Level     48468000.mcasp_tx
352:          0          0      CBAR 150 Level     48468000.mcasp_rx
354:         24          0      CBAR 335 Level     48484000.ethernet
355:         67          0      CBAR 336 Level     48484000.ethernet
357:          0          0      CBAR 354 Level     vpe
361:         20          0      CBAR  46 Level     4b101000.sham
362:          0          0      CBAR  47 Level     48090000.rng
363:          0          0      CBAR 146 Level     41501000.mmu
364:          0          0      CBAR 147 Level     41502000.mmu
365:          0          0      CBAR 352 Level     vip2-s0
366:          0          0      CBAR 393 Level     vip2-s1
369:      16949          0      CBAR  20 Level     OMAP DISPC
370:          0          0      CBAR  96 Level     OMAP HDMI
435:          0          0    palmas   8 Edge      48070000.i2c:tps659038@58:tps659038_rtc
437:          0          0   PCI-MSI   0 Edge      PCIe PME, aerdrv
469:          0          0      CBAR   2 Edge      mcp7941x
470:          0          0   pinctrl 1060 Edge      2-006f
472:         66          0      CBAR  71 Level     xhci-hcd:usb1
490:          1          0  4b220000.intc  16 Edge      remoteproc4
492:          1          0  4b220000.intc  18 Edge      remoteproc5
494:          1          0  4b2a0000.intc  16 Edge      remoteproc6
496:          1          0  4b2a0000.intc  18 Edge      remoteproc7
IPI0:          0          1  CPU wakeup interrupts
IPI1:          0          0  Timer broadcast interrupts
IPI2:      48241      64393  Rescheduling interrupts
IPI3:          0          0  Function call interrupts
IPI4:        432        620  Single function call interrupts
IPI5:          0          0  CPU stop interrupts
IPI6:          0          0  IRQ work interrupts
IPI7:          0          0  completion interrupts
Err:          0
root@...7xx-evm:~# cat /proc/softirqs 
                    CPU0       CPU1       
          HI:          0          2
       TIMER:      29167      29156
      NET_TX:          0         57
      NET_RX:        123         86
       BLOCK:          0          0
BLOCK_IOPOLL:          0          0
     TASKLET:        406        386
       SCHED:      28322      28253
     HRTIMER:        609        384
         RCU:          0          0

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ