BMQ 0.98 is released with the following changes
1. Minor comment/code readable changes.
2. BMQ default RLIMIT_NICE, which let normal privilege users can set nice up to -10.
3. Instroduce __bmq_find_first_bit()/__bmq_find_next_bit() for rq->queue.bitmap, to avoid zero checking.
In this release, there is just one minor improvement(#3) for BMQ itself. But there is #2 for user experience. Now, even normal privilege users can promote interactive focused tasks to nice level up to -10, for example, I'd like to use "nice --5 firefox" to run firefox so heavy normal nice level 0 tasks on the terminal won't impact it. Usually, normal privilege users can't set nice level lower than 0. But it should be a nice to have privilege if using BMQ.
Further explanation about the above use case, consider there is +/-4 auto nice level adjustment in BMQ, the firefox
and the normal nice level 0 tasks will still have some overlap in scheduler
level for some time, but the result turns out very good. If no overlap
is really required, nice level -10 can be used for the firefox.
Enjoy BMQ 0.98 for v5.2 kernel, :)
Full kernel tree repository can be found at https://gitlab.com/alfredchen/linux-bmq
And all-in-one patch can be found at gitlab.
Please report bugs at https://gitlab.com/alfredchen/bmq/issues.