From 2432ee22abbda17d0a07e23e0cfc4ec9e3a97a8d Mon Sep 17 00:00:00 2001 From: Slavka Peleva Date: Tue, 10 Dec 2024 17:22:14 +0200 Subject: [PATCH 1/2] enabled discard option Enable the discard option for virtio-blk and virtio-scsi devices for volumes on StorPool storage --- .../cloud/hypervisor/kvm/storage/StorPoolStoragePool.java | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/plugins/storage/volume/storpool/src/main/java/com/cloud/hypervisor/kvm/storage/StorPoolStoragePool.java b/plugins/storage/volume/storpool/src/main/java/com/cloud/hypervisor/kvm/storage/StorPoolStoragePool.java index aa0a8849d90f..9be784a5f989 100644 --- a/plugins/storage/volume/storpool/src/main/java/com/cloud/hypervisor/kvm/storage/StorPoolStoragePool.java +++ b/plugins/storage/volume/storpool/src/main/java/com/cloud/hypervisor/kvm/storage/StorPoolStoragePool.java @@ -16,6 +16,7 @@ // under the License. package com.cloud.hypervisor.kvm.storage; +import com.cloud.hypervisor.kvm.resource.LibvirtVMDef; import java.util.List; import java.util.Map; import java.util.Map.Entry; @@ -302,4 +303,11 @@ private String executeStorPoolServiceListCmd(OutputInterpreter.AllLinesParser pa public Boolean vmActivityCheck(HAStoragePool pool, HostTO host, Duration activityScriptTimeout, String volumeUuidListString, String vmActivityCheckPath, long duration) { return checkingHeartBeat(pool, host); } + + @Override + public void customizeLibvirtDiskDef(LibvirtVMDef.DiskDef disk) { + if (LibvirtVMDef.DiskDef.DiskBus.VIRTIO.equals(disk.getBusType()) || LibvirtVMDef.DiskDef.DiskBus.SCSI.equals(disk.getBusType())) { + disk.setDiscard(LibvirtVMDef.DiskDef.DiscardType.UNMAP); + } + } } From 63e0cd6835cf9f5603bb10c0cf55fa4f3d0f63bb Mon Sep 17 00:00:00 2001 From: Slavka Peleva Date: Thu, 12 Dec 2024 09:00:39 +0200 Subject: [PATCH 2/2] Addressed comments rearrange imports --- .../com/cloud/hypervisor/kvm/storage/StorPoolStoragePool.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/storage/volume/storpool/src/main/java/com/cloud/hypervisor/kvm/storage/StorPoolStoragePool.java b/plugins/storage/volume/storpool/src/main/java/com/cloud/hypervisor/kvm/storage/StorPoolStoragePool.java index 9be784a5f989..8147c042051f 100644 --- a/plugins/storage/volume/storpool/src/main/java/com/cloud/hypervisor/kvm/storage/StorPoolStoragePool.java +++ b/plugins/storage/volume/storpool/src/main/java/com/cloud/hypervisor/kvm/storage/StorPoolStoragePool.java @@ -16,7 +16,6 @@ // under the License. package com.cloud.hypervisor.kvm.storage; -import com.cloud.hypervisor.kvm.resource.LibvirtVMDef; import java.util.List; import java.util.Map; import java.util.Map.Entry; @@ -30,6 +29,7 @@ import com.cloud.agent.properties.AgentProperties; import com.cloud.agent.properties.AgentPropertiesFileHandler; import com.cloud.hypervisor.kvm.resource.KVMHABase.HAStoragePool; +import com.cloud.hypervisor.kvm.resource.LibvirtVMDef; import com.cloud.storage.Storage; import com.cloud.storage.Storage.StoragePoolType; import com.cloud.utils.script.OutputInterpreter;