Bug ID 1063638
Summary btrfs balance renders system unresponsive and eventually even kills WiFi when quota is enabled - review I/O scheduling parameters of btrfsmaintenance
Classification openSUSE
Product openSUSE Tumbleweed
Version Current
Hardware Other
OS Other
Status NEW
Severity Major
Priority P5 - None
Component Basesystem
Assignee bnc-team-screening@forge.provo.novell.com
Reporter okurz@suse.com
QA Contact qa-bugs@suse.de
CC Antoine.Saroufim@gmail.com, aschnell@suse.com, auxsvr@gmail.com, dmitry@roshchin.org, dsterba@suse.com, ecsos@schirra.net, enadolski@suse.com, fcrozat@suse.com, fliu@suse.com, friedhelm.stappert@web.de, guenther@mpanrw.de, gweberbh@gmail.com, hannsj_uhl@de.ibm.com, harald.achitz@gmail.com, ingo.goeppert+suse@mailbox.org, jeffm@suse.com, kdejaeger@gmail.com, lnussel@suse.com, lpechacek@suse.com, ndcunliffe@gmail.com, okurz@suse.com, ortsacs@yahoo.es, rgoldwyn@suse.com, richard@nod.at, ronisbr@gmail.com, slindomansilla@suse.com, suse@bugs.jan.ritzerfeld.org, sven.heithecker@web.de, t.rother@netzwissen.de, tneo@gmx.com, ulrich.hobelmann+suse@gmail.com
Depends on 1017461
Found By ---
Blocker ---

## Observation

+++ This bug was initially created as a clone of Bug #1017461 +++

The first part of fixes have been done in bug 1017461 but it seems the btrfs
maintenance tasks can still have a significant impact on system responsiveness.
Running the btrfs maintenance jobs, e.g.

* /etc/cron.monthly/btrfs-scrub
* /etc/cron.weekly/btrfs-balance
* /etc/cron.weekly/btrfs-trim

can make the clock with seconds displayed stop for some seconds or the mouse
cursor to get stuck for seconds


## Reproducible

* Somehow cause lot of "dirty" data that needs balancing/scrubbing
* Run the cron jobs
* Observe the system responsiveness is hindered


## Expected result

Interactive use of a machine should not be impacted


## Suggestion

It looks like /usr/share/btrfsmaintenance/btrfs-scrub.sh checks for the
variable "$BTRFS_SCRUB_PRIORITY" equalling "normal" from
/etc/sysconfig/btrfsmaintenance but this is set to "idle" for me in the config
file which causes that no I/O scheduling parameters are forwarded to the call
of scrub at all which does not seem to make sense to me. Should it set `-c 3`
for idle or `-c 2 -n 7` for best-effort prio 7 instead?


You are receiving this mail because: