high cpu usage when whisker menu is open
when i open the whisker menu it takes some seconds, which i think is too long, and when the menu is open the xfwm4 process takes a lot of cpu while doing "nothing". With nothing i mean nothing noticeable.
> sudo strace -f -p $(pgrep -x "xfwm4" | cut -f1 -d' ') --summary-only
strace: Process 1014056 attached with 3 threads
^Cstrace: Process 1014056 detached
strace: Process 1014057 detached
strace: Process 1014058 detached
% time seconds usecs/call calls errors syscall
------ ----------- ----------- --------- --------- ----------------
28,04 0,117151 8 13417 poll
17,41 0,072730 6 10668 4827 recvmsg
15,43 0,064478 10 6306 writev
9,66 0,040366 33 1206 ioctl
9,50 0,039678 8 4824 clock_gettime
9,40 0,039290 5 7236 getpid
7,82 0,032652 32652 1 restart_syscall
2,58 0,010765 5 1809 sched_yield
0,07 0,000309 3 80 63 stat
0,03 0,000113 12 9 1 futex
0,02 0,000084 7 11 write
0,01 0,000057 11 5 recvfrom
0,01 0,000046 7 6 read
0,00 0,000012 12 1 mprotect
0,00 0,000012 12 1 eventfd2
0,00 0,000010 10 1 close
0,00 0,000010 10 1 sendmsg
------ ----------- ----------- --------- --------- ----------------
100.00 0,417763 45582 4891 total
then when doing
> sudo strace -f -p $(pgrep -x "xfwm4" | cut -f1 -d' ') &> xfwm4.strace
a lot of the strace log (xfwm4.strace) looks something like this:
...
[pid 1014056] poll([{fd=3, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=3, revents=POLLOUT}])
[pid 1014056] writev(3, [{iov_base="\34\0\6\0\7\0\240\4\314\0\0\1\0\0\0\0\0\0\0\0\0\0R\0+\0\1\0", iov_len=28}, {iov_base=NULL, iov_len=0}, {iov_base="", iov_len=0}], 3) = 28
[pid 1014056] poll([{fd=3, events=POLLIN}], 1, -1) = 1 ([{fd=3, revents=POLLIN}])
[pid 1014056] recvmsg(3, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\1\2\20\246\0\0\0\0\271\4\340\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 32
[pid 1014056] poll([{fd=3, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=3, revents=POLLOUT}])
[pid 1014056] writev(3, [{iov_base="\2036\n\0\0\0\0\0\7\0\240\4\0\0\0\0\0\0\0\0\2\0\1\0\1\0\0\0\1\0\216\0"..., iov_len=40}, {iov_base=NULL, iov_len=0}, {iov_base="", iov_len=0}], 3) = 40
[pid 1014056] poll([{fd=3, events=POLLIN}], 1, -1) = 1 ([{fd=3, revents=POLLIN}])
[pid 1014056] recvmsg(3, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\0016\21\246\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", iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 32
...
I don't really know what this means and what to do about it.