diff --git a/lib/Ravada/HostDevice/Templates.pm b/lib/Ravada/HostDevice/Templates.pm
index 027e7c68a..ad190b5f5 100644
--- a/lib/Ravada/HostDevice/Templates.pm
+++ b/lib/Ravada/HostDevice/Templates.pm
@@ -133,7 +133,7 @@ our @TEMPLATES_KVM = (
#
,
- { name => "GPU Mediated Device"
+ { name => "GPU Mediated Device (display)"
,list_command => "mdevctl list"
,list_filter => '.*'
,template_args => encode_json(
@@ -157,6 +157,32 @@ our @TEMPLATES_KVM = (
}
]
}
+ ,
+ { name => "GPU Mediated Device (no display)"
+ ,list_command => "mdevctl list"
+ ,list_filter => '.*'
+ ,template_args => encode_json(
+ { uuid => '^(.*?) '}
+ )
+ ,templates => [{
+ path => '/domain/devices/hostdev'
+ ,template =>
+ "
+
+
+
+
+ "
+ }
+ ,{
+ path => '/domain/features/kvm'
+ ,type => 'unique_node'
+ ,template => ""
+
+ }
+ ]
+ }
+
);
our @TEMPLATES_VOID = (
diff --git a/t/device/40_mediated_device.t b/t/device/40_mediated_device.t
index 295c26afc..3d128da58 100644
--- a/t/device/40_mediated_device.t
+++ b/t/device/40_mediated_device.t
@@ -120,7 +120,7 @@ sub _req_shutdown($domain) {
sub test_mdev($vm) {
my $templates = Ravada::HostDevice::Templates::list_templates($vm->id);
- my ($mdev) = grep { $_->{name} eq "GPU Mediated Device" } @$templates;
+ my ($mdev) = grep { $_->{name} =~ /GPU Mediated Device/ } @$templates;
ok($mdev,"Expecting PCI template in ".$vm->name) or return;
my $id = $vm->add_host_device(template => $mdev->{name});
@@ -383,7 +383,7 @@ sub _add_template_timer($hd) {
sub test_mdev_kvm_state($vm) {
my $templates = Ravada::HostDevice::Templates::list_templates($vm->id);
- my ($mdev) = grep { $_->{name} eq "GPU Mediated Device" } @$templates;
+ my ($mdev) = grep { $_->{name} =~ /GPU Mediated Device/ } @$templates;
ok($mdev,"Expecting PCI template in ".$vm->name) or return;
my $id = $vm->add_host_device(template => $mdev->{name});