Skip to content

Commit c308340

Browse files
committed
Revision 2 of the integrated GPU passthrough proposal
Signed-off-by: John Else <[email protected]>
1 parent 9af363b commit c308340

File tree

2 files changed

+20
-16
lines changed

2 files changed

+20
-16
lines changed

features/futures/integrated-gpu-passthrough.md

Lines changed: 20 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -2,16 +2,17 @@
22
title: Integrated GPU passthrough support
33
layout: default
44
design_doc: true
5-
revision: 1
5+
revision: 2
66
status: proposed
77
---
88

99
Introduction
1010
------------
1111

1212
Passthrough of discrete GPUs has been
13-
[available since XenServer 6.0]({{site.baseurl}}/xapi/design/gpu-passthrough.html). With some
14-
extensions, we will also be able to support passthrough of integrated GPUs.
13+
[available since XenServer 6.0]({{site.baseurl}}/xapi/design/gpu-passthrough.html).
14+
With some extensions, we will also be able to support passthrough of integrated
15+
GPUs.
1516

1617
- Whether an integrated GPU will be accessible to dom0 or available to
1718
passthrough to guests must be configurable via XenAPI.
@@ -20,34 +21,37 @@ extensions, we will also be able to support passthrough of integrated GPUs.
2021
Host Configuration
2122
------------------
2223

23-
A new host field will be added:
24+
A new PGPU field will be added:
2425

25-
- `host.integrated_GPU_passthrough enum(disabled|enable_on_reboot|enabled|disable_on_reboot)`
26+
- `PGPU.dom0_access enum(enabled|disable_on_reboot|disabled|enable_on_reboot)`
2627

2728
as well as new API calls:
2829

29-
- `host.enable_integrated_GPU_passthrough`
30-
- `host.disable_integrated_GPU_passthrough`
30+
- `PGPU.enable_dom0_access`
31+
- `PGPU.disable_dom0_access`
3132

32-
Enabling integrated GPU passthrough will modify the xen commandline (using the
33-
xen-cmdline tool) such that dom0 will not be able to access the integrated GPU
34-
on next boot.
33+
Disabling dom0 access will modify the xen commandline (using the xen-cmdline
34+
tool) such that dom0 will not be able to access the GPU on next boot.
3535

36-
A state diagram for the field host.integrated_GPU_passthrough is shown below:
36+
A state diagram for the field PGPU.dom0_access is shown below:
3737

3838
![host.integrated_GPU_passthrough flow diagram](integrated-gpu-passthrough.png)
3939

40-
Note that when a client enables or disables integrated GPU passthrough, the
41-
change can be cancelled until the host is rebooted.
40+
Note that when a client enables or disables dom0 access for a PGPU, the change
41+
can be cancelled until the host is rebooted.
4242

4343
Handling vga_arbiter
4444
--------------------
4545

46-
Normally, xapi will not create a PGPU object for the PCI device with address
46+
Currently, xapi will not create a PGPU object for the PCI device with address
4747
reported by `/dev/vga_arbiter`. This is to prevent a GPU in use by dom0 from
48-
from being passed through to a guest. This will no longer be the case if:
48+
from being passed through to a guest. This behaviour will be changed - instead
49+
of not creating a PGPU object at all, xapi will create a PGPU, but its
50+
supported_VGPU_types field will be empty.
4951

50-
1. Integrated GPU passthrough is enabled.
52+
However, the PGPU's supported_VGPU_types will be populated as normal if:
53+
54+
1. dom0 access to the GPU is disabled.
5155
2. The vendor ID of the device is contained in a whitelist provided by xapi's
5256
config file.
5357

2.5 KB
Loading

0 commit comments

Comments
 (0)