If whole device is managed by ZFS (not partition), ZFS sets scheduler to none.
For rotational devices, there is no sense to use advanced schedulers cfq or bfq directly on hard disc. Both depends on processes, processes groups and application. In this case there is group of kernel processess for ZFS.
Only possible scheduler to consider is deadline / mq-deadline. Deadline scheduler group reads into batches and writed into separate batches ordering by increasing LBA address (so it should be good for HDDs).
There is a discussion on OpenZFS project to do not touch schedulers anymore and let it to be configured by admin:
There is huge benefit to use bfq on rotational HDD. No more huge lags during KVM backups.
bfq honor ionice and:
zvol processes have prio be/0be/4be/7 - NOTE: only with patched version of kvm: pve-qemu-kvm>= 8.1.5-6.