-
Notifications
You must be signed in to change notification settings - Fork 254
Description
EDIT: Happens with running as root on cron. More about reproducing this here.
When backintime runs its qt5_probing.py
, xorg.bin
consumes a full CPU (~97..~102%). This happens only with the
/usr/bin/python3 /usr/share/backintime/common/qt5_probing.py
processes. Quickly after they are killed, xorg.bin
is back to normal.
Also RAM and swap fill up. If I don't kill the qt5_probing.py
in time, the machine becomes unresponsive (and hot, duh).
Maybe related: their CPU loads are high themselves.
Before killing:
$ top -c
...
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
2286 root 20 0 1569896 129604 88988 R 100,0 0,397 16:37.40 /usr/bin/Xorg.bin -nolisten tcp -background none -seat seat0 vt2 -auth /run/sddm/xauth_AwPWFy -noreset -displayfd 16
4336 root 39 19 190912 45644 30924 S 13,00 0,140 3:43.98 /usr/bin/python3 /usr/share/backintime/common/qt5_probing.py
4337 root 39 19 190912 45136 30672 S 13,00 0,138 3:44.16 /usr/bin/python3 /usr/share/backintime/common/qt5_probing.py
5468 root 39 19 190912 45260 30668 S 12,67 0,139 0:12.71 /usr/bin/python3 /usr/share/backintime/common/qt5_probing.py
5467 root 39 19 190912 45564 30844 S 12,00 0,140 0:12.43 /usr/bin/python3 /usr/share/backintime/common/qt5_probing.py
2857 me 20 0 4057896 477992 202676 S 6,667 1,464 1:20.04 /usr/bin/plasmashell --no-respawn
4334 root 39 19 1866060 1,764g 4096 S 5,333 5,667 1:20.48 python3 -Es /usr/share/backintime/common/backintime.py backup-job
4335 root 39 19 1866092 1,764g 4096 S 5,333 5,664 1:21.01 python3 -Es /usr/share/backintime/common/backintime.py --profile-id 2 backup-job
5464 root 39 19 129716 114832 4096 S 5,000 0,352 0:05.32 python3 -Es /usr/share/backintime/common/backintime.py backup-job
5466 root 39 19 129748 114576 4096 S 5,000 0,351 0:05.26 python3 -Es /usr/share/backintime/common/backintime.py --profile-id 2 backup-job
3095 me 20 0 1464276 126100 97488 S 0,667 0,386 0:03.97 /usr/bin/easyeffects --gapplication-service
36 root 20 0 0 0 0 S 0,333 0,000 0:01.30 [ksoftirqd/3]
48 root 20 0 0 0 0 S 0,333 0,000 0:01.15 [ksoftirqd/5]
The processes were killed with:
for pid in $(ps -ef | awk '/\/backintime\/common\/qt5_probing\.py/ {print $2}'); do kill -9 $pid; done
About a minute after after killing xorg.bin
is at <1% CPU load.
$ top -c
...
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
5759 root 39 19 158868 147672 4480 D 47,00 0,452 0:26.96 rsync
2857 me 20 0 4066220 477992 202676 S 6,333 1,464 1:31.78 plasmashell
5813 root 20 0 0 0 0 I 3,667 0,000 0:00.74 kworker/u16:28-btrfs-endio-meta
5801 root 20 0 0 0 0 I 2,333 0,000 0:00.30 kworker/u16:15-btrfs-endio-meta
5835 root 20 0 0 0 0 I 2,000 0,000 0:00.42 kworker/u16:50-btrfs-endio-meta
5863 root 20 0 0 0 0 I 2,000 0,000 0:00.77 kworker/u16:78-btrfs-endio-meta
5822 root 20 0 0 0 0 I 1,333 0,000 0:00.42 kworker/u16:37-btrfs-endio-meta
2286 root 20 0 1572172 129732 88988 S 0,667 0,397 17:37.14 Xorg.bin
3064 me 9 -11 121496 21132 8832 S 0,667 0,065 0:01.50 pipewire
3095 me 20 0 1464276 129300 97488 S 0,667 0,396 0:05.39 easyeffects
89 root 0 -20 0 0 0 I 0,333 0,000 0:00.11 kworker/0:1H-kblockd
200 root 0 -20 0 0 0 I 0,333 0,000 0:00.15 kworker/1:1H-kblockd
201 root 0 -20 0 0 0 I 0,333 0,000 0:00.07 kworker/4:1H-kblockd
202 root 0 -20 0 0 0 I 0,333 0,000 0:00.18 kworker/7:1H-kblockd
The backup jobs have finished (one rsync is still active), but earlier tests have shown that they not the culprits.
This happened with BiT version 1.4.1 both from YaST (SUSE packet manager), and directly from GitHub.
Python version is 3.11.6.
Operating System: openSUSE Tumbleweed 20231215
KDE Plasma Version: 5.27.10
KDE Frameworks Version: 5.112.0
Qt Version: 5.15.11
Kernel Version: 6.6.3-1-default (64-bit)
Graphics Platform: X11
Processors: 8 × 11th Gen Intel® Core™ i7-1165G7 @ 2.80GHz
To help us diagnose the problem quickly, please provide the output of the console command
backintime --diagnostics
.
Wellllll..... Could that have a common cause?
$ backintime --diagnostics
Traceback (most recent call last):
File "/usr/share/backintime/common/backintime.py", line 1190, in <module>
startApp()
File "/usr/share/backintime/common/backintime.py", line 507, in startApp
args = argParse(None)
^^^^^^^^^^^^^^
File "/usr/share/backintime/common/backintime.py", line 568, in argParse
args, unknownArgs = mainParser.parse_known_args(args)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib64/python3.11/argparse.py", line 1902, in parse_known_args
namespace, args = self._parse_known_args(args, namespace)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib64/python3.11/argparse.py", line 2114, in _parse_known_args
start_index = consume_optional(start_index)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib64/python3.11/argparse.py", line 2054, in consume_optional
take_action(action, args, option_string)
File "/usr/lib64/python3.11/argparse.py", line 1978, in take_action
action(self, namespace, argument_values, option_string)
File "/usr/share/backintime/common/backintime.py", line 742, in __call__
diagnostics = collect_diagnostics()
^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/backintime/common/diagnostics.py", line 74, in collect_diagnostics
'OS': _get_os_release()
^^^^^^^^^^^^^^^^^
File "/usr/share/backintime/common/diagnostics.py", line 398, in _get_os_release
return osrelease['os-release']
~~~~~~~~~^^^^^^^^^^^^^^
KeyError: 'os-release'