summaryrefslogtreecommitdiffstats
path: root/src/main/java/org/openslx/libvirt/domain/Domain.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/org/openslx/libvirt/domain/Domain.java')
-rw-r--r--src/main/java/org/openslx/libvirt/domain/Domain.java7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/main/java/org/openslx/libvirt/domain/Domain.java b/src/main/java/org/openslx/libvirt/domain/Domain.java
index a8b57ff..c19b2a3 100644
--- a/src/main/java/org/openslx/libvirt/domain/Domain.java
+++ b/src/main/java/org/openslx/libvirt/domain/Domain.java
@@ -728,6 +728,13 @@ public class Domain extends LibvirtXmlDocument
public void setCpuMode( CpuMode mode )
{
this.getRootXmlNode().setXmlElementAttributeValue( "cpu", "mode", mode.toString() );
+ // Pass through cache information as well, because for some reason this is no the default
+ // when we do CPU host passthrough....
+ if ( mode == CpuMode.HOST_PASSTHROUGH ) {
+ this.getRootXmlNode().setXmlElementAttributeValue( "cpu/cache", "mode", "passthrough" );
+ } else if ( "passthrough".equals( this.getRootXmlNode().getXmlElementAttributeValue( "cpu/cache", "mode" ) ) ) {
+ this.getRootXmlNode().removeXmlElement( "cpu/cache" );
+ }
}
/**