Disposable qubes preloaded after every suspend/resume

Hi,

I’ve upgraded my laptop to Qubes 4.3 a some time ago, and I’ve noticed that the disposable qubes are preloaded after every suspend/resume cycle. So right now I have ~10 disposable qubes running, but I certainly don’t need that many. Each disposable qube is getting ~3GB of RAM, which seems a bit high.

I ended up disabling preloading of disaposablw qubes in global config, and this behavior went away.

The expected behavior when suspending is:

  • Preloaded disposables are scheduled for deletion, I really mean scheduled, because suspend is normally fast and there will not be enough time for them to be deleted at this stage

The expected behavior when resuming is:

  • Old preloaded disposables are finally deleted and new ones are preloaded.

In other words, if you have configured that 2 disposables should be preloaded, you will still have 2 after resume, but fresh ones.

If this is not what is happening with you, can you please run the following, all in dom0:

qvm-features default-dvm preload-dispvm-max
qvm-features dom0 preload-dispvm-max
# And for any other disposable template you have configured to preload from.

Let’s see all running or paused disposables:

qvm-ls --class DispVM --running --paused

Now only preloaded disposables:

qvm-ls --prefs is_preload=True

Follow the journal:

sudo journalctl -f

And on another terminal:

sudo systemctl suspend

After some seconds, the computer should suspend, wait for the lights to indicate that, then click any key to resume, and share the output of every command.

2 Likes

Unfortunately, it seems I can no longer reproduce this. I’ve enabled the preloading in global config again, but now the disposable qubes are shutdown/started as expected (on suspend/resume), so I no longer see more than 2.

FWIW this is what I saw yesterday, before I disabled the preloading:

I don’t know it the disable/enable fixed some sort of config issue, or maybe there’s some other ingredient to this. I’ll keep it enabled and will report if it starts happening again.