I will post this here, although it appears to also apply to Thunderbird as well. When running either PortableApps Firefox, and/or Thunderbird on my openSuSE 12.2 Linux machines, I am seeing a very high CPU usage as reported by TOP. Memory seems fine, swap seems fine, and I don't see this issue when running either Firefox or Thunderbird native. I might suspect this is a Wine issue but I do not see other PortableApps using high amounts of the CPU... Thoughts? I see lots of similar problems being reported throughout the internet, but no common thread or solution... What should I do to track this down further?
Here is an example output from TOP -
Tasks: 216 total, 2 running, 213 sleeping, 0 stopped, 1 zombie
%Cpu(s): 21.9 us, 8.7 sy, 0.0 ni, 69.4 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem: 12288104 total, 9454520 used, 2833584 free, 703596 buffers
KiB Swap: 10482684 total, 0 used, 10482684 free, 7078884 cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
477 marc 20 0 1767m 554m 16m S 125.8 4.6 339:53.03 firefox.exe
32091 marc 20 0 1756m 140m 11m S 99.8 1.2 209:31.53 thunderbird.exe
30700 root 20 0 210m 95m 46m S 5.3 0.8 13:59.83 Xorg
31873 marc 20 0 30876 9396 840 S 4.3 0.1 9:41.45 wineserver
31107 marc 20 0 358m 102m 21m S 2.3 0.9 6:11.75 skype
3942 marc 20 0 2605m 21m 12m S 1.7 0.2 0:01.27 notepad++.exe
31715 marc 20 0 625m 32m 20m S 1.7 0.3 6:02.70 boinc-gui
950 marc 20 0 1754m 56m 8432 S 0.7 0.5 2:14.13 plugin-containe
6385 boinc 20 0 237m 18m 5292 S 0.7 0.2 9:49.52 boinc-client
3 root 20 0 0 0 0 S 0.3 0.0 0:16.09 ksoftirqd/0
2857 root 20 0 0 0 0 S 0.3 0.0 0:00.39 kworker/0:2
3059 marc 20 0 19204 1728 1204 R 0.3 0.0 0:00.25 top
31010 marc 20 0 829m 119m 44m S 0.3 1.0 0:40.74 plasma-desktop
31096 marc 20 0 527m 50m 29m S 0.3 0.4 0:22.08 konsole
1 root 20 0 43812 4884 2044 S 0.0 0.0 0:01.64 systemd
2 root 20 0 0 0 0 S 0.0 0.0 0:00.03 kthreadd
6 root rt 0 0 0 0 S 0.0 0.0 0:01.32 migration/0
7 root -2 0 0 0 0 S 0.0 0.0 0:06.73 rcuc/0
Cannot say for certain if this is important, but will report it anywise....
I have noticed that often, when I initially start up Portable Firefox, or Thunderbird, the processes seems to consume "normal" i.e. low percentages of the CPU time. But after a while, either one or both will creep up and start to consume high percentages, according to TOP.
I did an strace -p on the corresponding processes, when running normally and when consuming high CPU percentages and got an interesting result.
Normal looks like an endless amount of this -
strace -p1234 Process 1234 attached [ Process PID=1234 runs in 32 bit mode. ] read(6, "L\3633\0\0\0\0\0\2\1\0\0\0\0\0\0", 16) = 16 sched_yield() = 0 rt_sigprocmask(SIG_BLOCK, [HUP INT USR1 USR2 ALRM CHLD IO], [], 8) = 0 write(3, "~\0\0\0\0\0\0\0\0\1\0\0\1\0\0\0\0\0\0\0\17\0\0\0\17\0\0\0\0\0\0\0"..., 64) = 64 read(4, "\3\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 64) = 64 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 clock_gettime(CLOCK_MONOTONIC_RAW, {477841, 704266869}) = 0 sched_yield() = 0 rt_sigprocmask(SIG_BLOCK, [HUP INT USR1 USR2 ALRM CHLD IO], [], 8) = 0 writev(3, [{"\30\0\0\0,\0\0\0\0\0\0\0\4\0\0\0L\3633\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 64}, {"\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 40}, {"\244\0\0\0", 4}], 3) = 108 read(4, "\3\1\0\0\0\0\0\0D\350\306\223?#\316\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 64) = 64 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 read(6, "L\3633\0\0\0\0\0\2\1\0\0\0\0\0\0", 16) = 16 sched_yield() = 0 rt_sigprocmask(SIG_BLOCK, [HUP INT USR1 USR2 ALRM CHLD IO], [], 8) = 0 write(3, "~\0\0\0\0\0\0\0\0\1\0\0\1\0\0\0\0\0\0\0\17\0\0\0\17\0\0\0\0\0\0\0"..., 64) = 64 read(4, "\3\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 64) = 64 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 clock_gettime(CLOCK_MONOTONIC_RAW, {477841, 805913299}) = 0 sched_yield() = 0 rt_sigprocmask(SIG_BLOCK, [HUP INT USR1 USR2 ALRM CHLD IO], [], 8) = 0 writev(3, [{"\30\0\0\0,\0\0\0\0\0\0\0\4\0\0\0L\3633\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 64}, {"\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 40}, {"\244\0\0\0", 4}], 3) = 108 read(4, "\3\1\0\0\0\0\0\0\274[\326\223?#\316\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 64) = 64 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0and when consuming high CPU percentages I get an endless amount of this -
strace -p15025 Process 15025 attached [ Process PID=15025 runs in 32 bit mode. ] read(6, "\374\3223\0\0\0\0\0\0\0\0\0\0\0\0\0", 16) = 16 recv(14, 0x7de0a328, 4096, 0) = -1 EAGAIN (Resource temporarily unavailable) recv(14, 0x7de0a328, 4096, 0) = -1 EAGAIN (Resource temporarily unavailable) recv(8, 0x7ddc5878, 4096, 0) = -1 EAGAIN (Resource temporarily unavailable) futex(0x110070, FUTEX_WAKE_PRIVATE, 1) = 0 rt_sigprocmask(SIG_BLOCK, [HUP INT USR1 USR2 ALRM CHLD IO], [], 8) = 0 write(3, "~\0\0\0\0\0\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\1\0\0\17\1\0\0\0\0\0\0"..., 64) = 64 read(4, "\3\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 64) = 64 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 clock_gettime(CLOCK_MONOTONIC_RAW, {477489, 234524640}) = 0 recv(14, 0x7de0a328, 4096, 0) = -1 EAGAIN (Resource temporarily unavailable) recv(14, 0x7de0a328, 4096, 0) = -1 EAGAIN (Resource temporarily unavailable) recv(8, 0x7ddc5878, 4096, 0) = -1 EAGAIN (Resource temporarily unavailable) sched_yield() = 0 futex(0x110070, FUTEX_WAKE_PRIVATE, 1) = 1 rt_sigprocmask(SIG_BLOCK, [HUP INT USR1 USR2 ALRM CHLD IO], [], 8) = 0 write(3, "~\0\0\0\0\0\0\0\0\1\0\0\0\0\0\0\0\0\0\0\201\2\0\0\221\2\0\0\0\0\0\0"..., 64) = 64 read(4, "\3\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 64) = 64 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 clock_gettime(CLOCK_MONOTONIC_RAW, {477489, 234750186}) = 0 recv(14, 0x7de0a328, 4096, 0) = -1 EAGAIN (Resource temporarily unavailable) recv(14, 0x7de0a328, 4096, 0) = -1 EAGAIN (Resource temporarily unavailable) recv(8, 0x7ddc5878, 4096, 0) = -1 EAGAIN (Resource temporarily unavailable) sched_yield() = 0 rt_sigprocmask(SIG_BLOCK, [HUP INT USR1 USR2 ALRM CHLD IO], [], 8) = 0 write(3, "~\0\0\0\0\0\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\2\0\0\r\2\0\0\0\0\0\0"..., 64) = 64There seems like a high number of calls to clock_gettime, in both the Portable Firefox and Thunderbird processes, but what is happening to cause the "Resource temporarily unavailable" response? Internet searches are not turning up much helpful information yet, will keep searching... Any ideas?
Marc..
Ping? No thoughts anyone?