coreos / rpm-ostree

⚛📦 Hybrid image/package system with atomic upgrades and package layering
https://coreos.github.io/rpm-ostree
Other
856 stars 195 forks source link

rpm-ostree actions interrupt the whole system #1730

Open fbruetting opened 5 years ago

fbruetting commented 5 years ago

Host system details

● ostree://fedora-workstation:fedora/29/x86_64/silverblue
                   Version: 29.20190113.0 (2019-01-13T00:59:43Z)
                BaseCommit: bc6826426f295d930f1a72e69d444b19eaa7b40ac891865ceaeb66378d097a62
              GPGSignature: Valid signature by 5A03B4DD8254ECA02FDA1637A20AA56B429476B4
       RemovedBasePackages: gnome-terminal-nautilus-3.30.2-1.fc29.x86_64
                            gnome-classic-session-3.30.1-1.fc29.noarch
                            gnome-shell-extension-places-menu-3.30.1-1.fc29.noarch
                            gnome-terminal-3.30.2-1.fc29.x86_64
                            gnome-shell-extension-apps-menu-3.30.1-1.fc29.noarch
                            gnome-shell-extension-launch-new-instance-3.30.1-1.fc29.noarch
                            gnome-shell-extension-window-list-3.30.1-1.fc29.noarch
                            gnome-shell-extension-alternate-tab-3.30.1-1.fc29.noarch
           LayeredPackages: adapta-gtk-theme aeskulap android-tools baobab bat cheese
                            chromium dconf-editor dnf easytag exa fd-find ffmpeg file-roller
                            file-roller-nautilus fuse-exfat git gnome-encfs-manager
                            gnome-logs gnome-tweaks gnome-usage gpick hack-fonts htop iftop
                            julia linux-libertine-biolinum-fonts linux-libertine-fonts mosh
                            neovim powerline-go pv python3-matplotlib ripgrep snapd task
                            tilix tilix-nautilus tmux tokei xenlism-wildfire
                            xenlism-wildfire-midnight youtube-dl zsh
             LocalPackages: rpmfusion-nonfree-release-29-0.5.noarch
                            rpmfusion-free-release-29-0.5.noarch

Expected vs actual behavior When doing upgrades or installs in rpm-ostree, this regularly leads to stuttering audio for a short period of time. Could that be avoided or at least improved somehow? Maybe via the nice level?

vtolstov commented 5 years ago

yes, this will be good, because in production this slowdown system and some of my apps timeouts

fbruetting commented 4 years ago

Are there news for FSB31? Because it even got a little bit worse. Especially when it upgrades in the background, we encounter these „sporadic“ stalls, which is annoying. Maybe adjusting the process priority helps for now?

jlebon commented 4 years ago

Yeah, I experience this myself when rpm-ostree writes the OSTree commit or stages the deployment. So I would guess it's high IO causing the stuttering?

Could that be avoided or at least improved somehow? Maybe via the nice level?

Hmm, I had thought nice was for CPU load, though some Googling and reading of ioprio_set(2) and ionice(1) seem to indicate that the I/O priority by default is derived from the CPU priority. So just using nice(2) might work after all.

We could make the daemon set a different priority on itself depending on if it's handling a background vs foreground request (at the extent that it can)?