You are not logged in.

#1 2017-09-18 07:44:14

setzer22
Member
Registered: 2014-07-26
Posts: 47

[Solved] System doesn't boot with BFQ

Hello all,

I am trying to enable BFQ as the I/O scheduler, and following the wiki's recommendation I set the "elevator=bfq" kernel command line parameter. I am also sure I'm running linux-zen as the kernel (this is what uname -a prints).

However, when that parameter is set, my system hangs at boot. The point seems to vary, sometimes it prints the "running hook [resume]" message and sometimes it hangs before that. I've never seen it get past that point.

How can I further debug this?

Last edited by setzer22 (2017-09-18 20:02:11)

Offline

#2 2017-09-18 08:20:35

ugjka
Member
From: Latvia
Registered: 2014-04-01
Posts: 1,808
Website

Re: [Solved] System doesn't boot with BFQ

yeah for some reason "elevator=bfq" doesn't work on linux-ck kernel either, so I'm doing the tmpfiles thing to enable it  for my drive


https://ugjka.net
paru > yay | webcord > discord
pacman -S spotify-launcher
mount /dev/disk/by-...

Offline

#3 2017-09-18 09:29:36

loqs
Member
Registered: 2014-03-06
Posts: 17,369

Re: [Solved] System doesn't boot with BFQ

https://bugzilla.kernel.org/show_bug.cgi?id=196695
Edit:
https://bbs.archlinux.org/viewtopic.php … 5#p1736485 contains more information about why elevator=bfq does not work with 4.12
linux-zen has three versions of bfq https://github.com/zen-kernel/zen-kerne … osched.txt

If bfq-mq patches have been applied, then the following three
instances of BFQ are available (otherwise only the first instance):
- bfq: mainline version of BFQ, for blk-mq
- bfq-mq: development version of BFQ for blk-mq; this version contains
   also all latest features and fixes not yet landed in mainline, plus many
   safety checks
- bfq-sq: BFQ for legacy blk; also this version contains latest features
and fixes, as well as safety checks

Edit2:
https://git.archlinux.org/svntogit/pack … 28b69#n423
https://git.archlinux.org/svntogit/pack … 5a9a1#n416
bfq-mq is disabled in linux-zen 4.12.10/4.3.2

Last edited by loqs (2017-09-18 11:50:53)

Offline

#4 2017-09-18 20:01:58

setzer22
Member
Registered: 2014-07-26
Posts: 47

Re: [Solved] System doesn't boot with BFQ

Thanks, I was able to set bfq by using the tmpfiles.

Marking this as solved.

Offline

#5 2017-09-18 20:36:33

loqs
Member
Registered: 2014-03-06
Posts: 17,369

Re: [Solved] System doesn't boot with BFQ

setzer22 wrote:

Thanks, I was able to set bfq by using the tmpfiles.

I believe you are mistaken in needing to use tmpfiles.d to set bfq for linux-zen or that it would be possible on your system given your initial post to set the scheduler to bfq for all your systems devices.
Multiqueue disabled linux-zen 4.13.2  (given your initial post your system appears to be using this mode for at least one device)

$ cat /sys/block/sda/queue/scheduler
noop deadline cfq [bfq-sq]

Note the scheduler is set to bfq-sq already and there is no bfq option
Multiqueue enabled linux-zen 4.13.2

$ cat /sys/block/sda/queue/scheduler
mq-deadline kyber [bfq] none

The scheduler is already set to bfq
If the wiki artitcle you are referring to is Improving_performance#Tuning_IO_schedulers
A lot of the information provided in that section has not been updated to take account of changes in recent kernel releases or changes that are none mainline specific such as made by linux-zen.

Offline

#6 2017-09-18 21:14:13

setzer22
Member
Registered: 2014-07-26
Posts: 47

Re: [Solved] System doesn't boot with BFQ

You are right, the scheduler is set to bfq-sq, however, I am not using 4.13 but 4.12 (I don't know if that makes a difference).

So, in the end, it seems bfq-sq was enabled by default and regular bfq is not available on the linux-zen package.

Offline

#7 2017-09-18 21:38:45

loqs
Member
Registered: 2014-03-06
Posts: 17,369

Re: [Solved] System doesn't boot with BFQ

setzer22 wrote:

So, in the end, it seems bfq-sq was enabled by default and regular bfq is not available on the linux-zen package.

The scheduler named bfq is enabled on linux-zen but you would need to pass the kernel boot option scsi_mod.use_blk_mq=1 or be using a device that uses blkmq  natively such as an NVME device to access it.
https://www.thomas-krenn.com/de/wikiDE/ … _v4.10.svg anything at the bottom that is only connected to blkmq will force the use of blkmq.
Edit:
The topic was arguably much simpler to explain / document before the 4.10+ changes.

Last edited by loqs (2017-09-18 21:42:13)

Offline

Board footer

Powered by FluxBB