I use Linux Mint 16 Petra 64bit Cinnamon. When I install Skype (either from repo, or directly from Microsoft) it soon starts using 100% of 1 CPU Core, doubling power consumption of my system.
I tried removing the ~/.skype folder and logging with different account.
I tried removing the skype from repositories and install it directly from Microsoft.
Is there anything I can do to troubleshoot and fix this problem?
I can't reproduce this problem with older Mints, nor with Ubuntu Saucy and Raring.
The doesn't manifest itself, if I launch skype and never log in (keep skype displaying the login screen). But if the skype was logged in before and had the high CPU consumption - clicking "Sign Out" doesn't help the problem (besides even if it did, there is little point in using skype without logging in)
Following the advise of @slm I can include the strace output. It seems that Skype is busy doing poll syscall... I thought that polling for resource introduces processor idling, not 100% usage.
strace -c skype [ Process PID=31614 runs in 32 bit mode. ] % time seconds usecs/call calls errors syscall ------ ----------- ----------- --------- --------- ---------------- 0.00 0.000000 0 1 execve ------ ----------- ----------- --------- --------- ---------------- 100.00 0.000000 1 total System call usage summary for 32 bit mode: % time seconds usecs/call calls errors syscall ------ ----------- ----------- --------- --------- ---------------- 96.95 45.349256 493 92056 poll 1.26 0.588104 2 279026 clock_gettime 0.99 0.462877 3 183996 182979 recv 0.33 0.156517 2 79850 468 stat64 0.30 0.138574 2 79740 gettimeofday 0.10 0.047275 45 1040 174 futex 0.04 0.020046 1671 12 nanosleep 0.01 0.003025 4 792 writev 0.00 0.002037 2 871 write 0.00 0.001928 3 692 143 read 0.00 0.001482 2 944 561 open 0.00 0.000591 2 333 238 access 0.00 0.000584 1 466 mmap2 0.00 0.000577 1 421 madvise 0.00 0.000485 1 431 close 0.00 0.000462 4 120 munmap 0.00 0.000378 3 115 mprotect 0.00 0.000372 4 86 fstatfs64 0.00 0.000269 1 263 fstat64 0.00 0.000175 3 66 29 recvmsg 0.00 0.000113 1 121 time 0.00 0.000108 1 113 5 lstat64 0.00 0.000082 3 29 getdents64 0.00 0.000056 2 30 fadvise64_64 0.00 0.000047 3 15 openat 0.00 0.000046 15 3 shmdt 0.00 0.000045 2 24 sendmsg 0.00 0.000038 2 22 clone 0.00 0.000037 1 33 socket 0.00 0.000032 2 13 _llseek 0.00 0.000032 11 3 shmat 0.00 0.000032 11 3 shmget 0.00 0.000031 1 29 brk 0.00 0.000027 5 6 shmctl 0.00 0.000015 2 9 send 0.00 0.000013 0 27 fcntl64 0.00 0.000011 2 6 2 connect 0.00 0.000007 2 3 readlink 0.00 0.000007 1 13 rt_sigaction 0.00 0.000005 1 4 geteuid32 0.00 0.000005 1 4 getsockname 0.00 0.000003 0 10 uname 0.00 0.000003 3 1 eventfd2 0.00 0.000003 3 1 pipe2 0.00 0.000002 2 1 set_tid_address 0.00 0.000002 2 1 getpeername 0.00 0.000001 1 2 rt_sigprocmask 0.00 0.000001 1 2 getrlimit 0.00 0.000001 1 2 clock_getres 0.00 0.000001 1 1 set_robust_list 0.00 0.000000 0 2 unlink 0.00 0.000000 0 2 chmod 0.00 0.000000 0 3 3 mkdir 0.00 0.000000 0 1 pipe 0.00 0.000000 0 22 ioctl 0.00 0.000000 0 1 umask 0.00 0.000000 0 4 statfs 0.00 0.000000 0 4 fstatfs 0.00 0.000000 0 2 flock 0.00 0.000000 0 3 getuid32 0.00 0.000000 0 1 getgid32 0.00 0.000000 0 1 getegid32 0.00 0.000000 0 1 getresuid32 0.00 0.000000 0 1 getresgid32 0.00 0.000000 0 2 gettid 0.00 0.000000 0 1 sched_getaffinity 0.00 0.000000 0 1 set_thread_area 0.00 0.000000 0 4 1 bind 0.00 0.000000 0 1 listen 0.00 0.000000 0 2 sendto 0.00 0.000000 0 1 shutdown ------ ----------- ----------- --------- --------- ---------------- 100.00 46.775820 721911 184603 total When I attach strace to running skype with sudo strace -p $(pgrep skype) I get tons of the following entries:
clock_gettime(CLOCK_MONOTONIC, {7553, 920730509}) = 0 recv(6, 0xf967e5a8, 4096, 0) = -1 EAGAIN (Resource temporarily unavailable) clock_gettime(CLOCK_MONOTONIC, {7553, 920937548}) = 0 poll([{fd=3, events=POLLIN}, {fd=7, events=POLLIN}, {fd=6, events=POLLIN}, {fd=9, events=POLLIN}, {fd=12, events=POLLIN}, {fd=28, events=POLLIN}], 6, 0) = 0 (Timeout) recv(6, 0xf967e5a8, 4096, 0) = -1 EAGAIN (Resource temporarily unavailable) clock_gettime(CLOCK_MONOTONIC, {7553, 921039735}) = 0 recv(6, 0xf967e5a8, 4096, 0) = -1 EAGAIN (Resource temporarily unavailable) clock_gettime(CLOCK_MONOTONIC, {7553, 921089170}) = 0 poll([{fd=3, events=POLLIN}, {fd=7, events=POLLIN}, {fd=6, events=POLLIN}, {fd=9, events=POLLIN}, {fd=12, events=POLLIN}, {fd=28, events=POLLIN}], 6, 0) = 0 (Timeout) 