[4.1] qvm-shutdown --wait with disposables is buggy?

Example:
Start any non-named disposable. Then invoke (substitute 1234 by given id):

qvm-shutdown --wait disp1234

In Qubes 4.0 all went fine. I migrated one of my shell scripts to 4.1, which now results in

[user@dom0 ~]$ qvm-shutdown --wait disp1234
Traceback (most recent call last):
  File "/usr/bin/qvm-shutdown", line 5, in <module>
    sys.exit(main())
  File "/usr/lib/python3.8/site-packages/qubesadmin/tools/qvm_shutdown.py", line 139, in main
    power_state = vm.get_power_state()
  File "/usr/lib/python3.8/site-packages/qubesadmin/vm/__init__.py", line 188, in get_power_state
    power_state = self._get_current_state()['power_state']
  File "/usr/lib/python3.8/site-packages/qubesadmin/vm/__init__.py", line 204, in _get_current_state
    response = self.qubesd_call(self._method_dest, 'admin.vm.CurrentState')
  File "/usr/lib/python3.8/site-packages/qubesadmin/base.py", line 74, in qubesd_call
    return self.app.qubesd_call(dest, method, arg, payload,
  File "/usr/lib/python3.8/site-packages/qubesadmin/app.py", line 748, in qubesd_call
    return self._parse_qubesd_response(return_data)
  File "/usr/lib/python3.8/site-packages/qubesadmin/base.py", line 109, in _parse_qubesd_response
    raise exc_class(format_string, *args)
qubesadmin.exc.QubesVMNotFoundError: No such domain: 'disp1234'

There might be race conditions, as disp1234 properly gets shut down, but still raising the error

No such domain: ‘disp1234’

Is this an intended “change” for disposables in 4.1?

1 Like

It looks like a good bug report, which should be put into the Qubes Issues. How to report bugs.

1 Like

Yes, thanks. Issue can be found here:

1 Like