On Sat, May 20, 2023 at 3:44 PM Demi Marie Obenour
<demiobenour(a)gmail.com> wrote:
I noticed that by default, Qubes OS has voluntary kernel preemption
as opposed to full preemption. I found that enabling full preemption
(preempt=full on kernel command line) makes the system significantly
more responsive under heavy I/O load. In particular, if I build a
kernel in a Qubes OS VM, it significantly degrades responsiveness
without preempt=full. With preempt=full, the system remains
responsive. The storage stack used is LVM thin provisioning on LUKS,
and I have observed significant CPU usage in dom0 kernel threads with
names that indicate they are related to dm-thin and dm-crypt.
For workstation, preempt=full does likely make sense, and I have been
running it for a while. For server, maybe not so much. That is the
joy of dynamic preempt. You can boot with preempt=full and run that
way if you like. There is an open issue for the workstation WG to
look at making preempt=full the default there at some point.
The kernel config used by the Qubes kernel package I use (6.1.28) is
based on Fedora 37’s config, and Marek Marczykowski-Górecki (CCd)
indicated that the same arguments apply to Fedora. Therefore, I am
asking if Fedora should use full kernel preemption by default.
I would still say no, as we do have dynamic, and you can set it to
whatever you like.
Justin
> Sincerely,
> Demi Marie Obenour (she/her/hers)_______________________________________________