Re: [PATCH 2/2] bcachefs: set rebalance thread to SCHED_BATCH and nice 19
From: Kent Overstreet
Date: Tue Jan 14 2025 - 10:19:23 EST
On Tue, Jan 14, 2025 at 01:29:04PM +0000, Christian Loehle wrote:
> On 1/14/25 12:47, Florian Schmaus wrote:
> > While the rebalance thread is isually not compute bound, it does cause
>
> s/isually/usually
>
> > a considerable amount of I/O. Since "reducing" the nice level from 0
> > to 19, also implicitly reduces the threads best-effort I/O scheduling
> > class level from 4 to 7, the reblance thread's I/O will be depriotized
>
> s/depriotized/deprioritized/
>
> > over normal I/O.
> >
> > Furthermore, we set the rebalance thread's scheduling class to BATCH,
> > which means that it will potentially receive a higher scheduling
> > latency. Making room for threads that need a low
> > schedulinglatency (e.g., interactive onces).
>
> s/schedulinglatency/
> I know nothing about bcachefs internals, but could this also be a problem?
> The rebalance thread might not run for O(second) or so?
Actually that is a concern - six locks don't have priority inheritence.
For that matter, standard mutexes and rw semaphores don't either, just
the RT variants, which seems questionable to me...