New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Devices assignment API for Qubes R4.0 #2257

Closed
marmarek opened this Issue Aug 18, 2016 · 0 comments

Comments

Projects
None yet
1 participant
@marmarek
Member

marmarek commented Aug 18, 2016

Expose flexible API to handle any type of devices (PCI, USB, etc), with very simple actions:

  • list
  • attach
  • detach

Then create appropriate frontend (qvm-devices tool, tray icon/applet #2132 )

@marmarek marmarek added this to the Release 4.0 milestone Aug 18, 2016

@marmarek marmarek referenced this issue Aug 18, 2016

Closed

(R4.0) Feature parity with R3.1 #1825

12 of 12 tasks complete

@marmarek marmarek referenced this issue in QubesOS/qubes-mgmt-salt-dom0-qvm Aug 31, 2016

Merged

Update to core3 qubes api #2

marmarek added a commit to marmarek/old-qubes-core-admin that referenced this issue Sep 3, 2016

qubes: new devices API
Allow device plugin to list attached and available devices. Enforce
at API level every device being exposed by some domain.

This commit only changes devices API, but not update existing users
(pci) yet.

QubesOS/qubes-issues#2257

marmarek added a commit to marmarek/old-qubes-core-admin that referenced this issue Sep 3, 2016

marmarek added a commit to marmarek/old-qubes-core-admin that referenced this issue Sep 3, 2016

qubes/devices: use more detailed exceptions than just KeyError
Especially inherit from QubesException, so tools will treat this as
properly handled error.

QubesOS/qubes-issues#2257

marmarek added a commit to marmarek/old-qubes-core-admin that referenced this issue Sep 3, 2016

qubes/ext/pci: move PCI devices handling to an extension
Implement required event handlers according to documentation in
qubes.devices.

A modification of qubes.devices.DeviceInfo is needed to allow dynamic,
read-only properties.

QubesOS/qubes-issues#2257

marmarek added a commit to marmarek/old-qubes-core-admin that referenced this issue Sep 3, 2016

tests: PCI devices tests
Just basic things for now.

QubesOS/qubes-issues#2257

marmarek added a commit to marmarek/old-qubes-core-admin that referenced this issue Sep 3, 2016

qubes/tools: add qvm-device tool (and tests)
Add a tool to manipulate various devices. It can be used as `qvm-device
class action` (like `qvm-device pci ls`), but also can be symlinked to
`qvm-class` for particular device class (for example `qvm-pci`) - then
device class can be omitted.

QubesOS/qubes-issues#2257

marmarek added a commit to marmarek/old-qubes-core-admin that referenced this issue Sep 3, 2016

tests: PCI devices tests
Just basic things for now.

QubesOS/qubes-issues#2257

marmarek added a commit to marmarek/old-qubes-core-admin that referenced this issue Sep 3, 2016

qubes/tools: add qvm-device tool (and tests)
Add a tool to manipulate various devices.

QubesOS/qubes-issues#2257

marmarek added a commit to marmarek/old-qubes-core-admin that referenced this issue Sep 3, 2016

qubes/tools: allow calling qvm-device as qvm-devclass (like qvm-pci)
Tool can be symlinked to `qvm-class` for particular device class (for
example `qvm-pci`) - then device class can be omitted.

QubesOS/qubes-issues#2257

marmarek added a commit to marmarek/old-qubes-core-admin that referenced this issue Sep 4, 2016

qubes: new devices API
Allow device plugin to list attached and available devices. Enforce
at API level every device being exposed by some domain.

This commit only changes devices API, but not update existing users
(pci) yet.

QubesOS/qubes-issues#2257

marmarek added a commit to marmarek/old-qubes-core-admin that referenced this issue Sep 4, 2016

marmarek added a commit to marmarek/old-qubes-core-admin that referenced this issue Sep 4, 2016

qubes/devices: use more detailed exceptions than just KeyError
Especially inherit from QubesException, so tools will treat this as
properly handled error.

QubesOS/qubes-issues#2257

marmarek added a commit to marmarek/old-qubes-core-admin that referenced this issue Sep 4, 2016

qubes/ext/pci: move PCI devices handling to an extension
Implement required event handlers according to documentation in
qubes.devices.

A modification of qubes.devices.DeviceInfo is needed to allow dynamic,
read-only properties.

QubesOS/qubes-issues#2257

marmarek added a commit to marmarek/old-qubes-core-admin that referenced this issue Sep 4, 2016

tests: PCI devices tests
Just basic things for now.

QubesOS/qubes-issues#2257

marmarek added a commit to marmarek/old-qubes-core-admin that referenced this issue Sep 4, 2016

qubes/tools: add qvm-device tool (and tests)
Add a tool to manipulate various devices.

QubesOS/qubes-issues#2257

marmarek added a commit to marmarek/old-qubes-core-admin that referenced this issue Sep 4, 2016

qubes/tools: allow calling qvm-device as qvm-devclass (like qvm-pci)
Tool can be symlinked to `qvm-class` for particular device class (for
example `qvm-pci`) - then device class can be omitted.

QubesOS/qubes-issues#2257

marmarek added a commit to marmarek/old-qubes-core-admin that referenced this issue Sep 4, 2016

qubes/ext/pci: implement pci-no-strict-reset/BDF feature
Instead of old per-VM flag 'pci_strictreset', now implement this as
per-device flag using features. To not fail on particular device
assignment set 'pci-no-strict-reset/DEVICE-BDF' to True. For
example 'pci-no-strict-reset/00:1b.0'.

QubesOS/qubes-issues#2257

marmarek added a commit to marmarek/old-qubes-core-admin that referenced this issue Sep 4, 2016

marmarek added a commit to marmarek/old-qubes-core-admin that referenced this issue Sep 4, 2016

marmarek added a commit to marmarek/old-qubes-core-admin that referenced this issue Sep 4, 2016

Merge branch 'core3-devices' into core3-devel
* core3-devices:
  Fix core2migration and tests for new devices API
  tests: more qubes.devices tests
  qubes/ext/pci: implement pci-no-strict-reset/BDF feature
  qubes/tools: allow calling qvm-device as qvm-devclass (like qvm-pci)
  qubes: make pylint happy
  qubes/tools: add qvm-device tool (and tests)
  tests: load qubes.tests.tools.qvm_ls
  tests: PCI devices tests
  tests: add context manager to catch stdout
  qubes/ext/pci: move PCI devices handling to an extension
  qubes/devices: use more detailed exceptions than just KeyError
  qubes/devices: allow non-persistent attach
  qubes/storage: misc Fixes for VM-exposed block devices handling
  qubes: new devices API

Fixes QubesOS/qubes-issues#2257

marmarek added a commit to marmarek/old-qubes-core-admin that referenced this issue Sep 12, 2016

qubes/ext/pci: fix handling dom0 before starting first VM
Before starting fist VM, backend/pci xenstore directory does not exists.
Do not crash on it

QubesOS/qubes-issues#2257

marmarek added a commit to marmarek/old-qubes-core-admin that referenced this issue Sep 13, 2016

qubes/ext/pci: fix handling dom0 before starting first VM
Before starting fist VM, backend/pci xenstore directory does not exists.
Do not crash on it

QubesOS/qubes-issues#2257

@marmarek marmarek closed this Sep 21, 2016

marmarek added a commit to QubesOS/qubes-app-linux-usb-proxy that referenced this issue Oct 5, 2016

marmarek added a commit to QubesOS/qubes-app-linux-usb-proxy that referenced this issue Oct 5, 2016

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment