# October 2025 Patch 1 Release

This patch improves system reliability, enhances security, and fixes critical issues that affect <code class="expression">space.vars.PRODUCT\_NAME</code> operations. This includes support for self-hosted deployments.

### New Features and Enhancements

* **Pre-configured Volume-backed VM Flavors:** Zero-disk flavors are now required for creating volume-backed VMs. Six diskless flavors are now available out of the box for volume-backed and hotplug VMs, eliminating the need to create flavors manually.
* **Volume Import from Storage Arrays via pcdctl:** Storage volumes can now be imported from backend arrays (Pure Storage, HPE Primera, etc.) using `pcdctl`, enabling workflows like database refreshes from production replicas without recreating volumes.
* **Enhanced Audit Logging for Core Services:** API audit events from key system components now persist to the filesystem, accessible via the audit PVC on the management node for compliance and troubleshooting workflows.
* **Customizable CPU Virtualization Settings:** Cluster creation now supports configuring CPU mode (host-model, host-passthrough, custom) and model, enabling standardized CPU features across hosts for optimized live migration compatibility.
* **Automated Image Storage Cleanup:** Deleted images are now automatically removed from storage backends (filesystem, shared storage) without manual intervention.

### Upgrade Notes <a href="#upgrade-notes" id="upgrade-notes"></a>

**CPU Mode and Model customization:**

<code class="expression">space.vars.PRODUCT\_ACRONYM</code> now supports configuring a CPU mode for new clusters. It can be one of `custom` (current default), `host-model` and `host-passthrough` . When using `custom` mode, you would also need to specify the CPU model to be used by all VMs in that cluster.

For existing clusters, if you had a non-default CPU mode/model configured in the `nova_override.conf` file on hypervisors before this release, please ensure you update that in the respective cluster object using the API calls below, post the upgrade to this patch release.

```bash
#Query the current cluster spec
curl -X GET -H "X-Auth-Token: <TOKEN>" https://<FQDN>/resmgr/v2/clusters/<CLUSTER_NAME>
#Update the CPU mode and model in the above response and apply the patch
curl -X PUT -H "X-Auth-Token: <TOKEN>" https://<FQDN>/resmgr/v2/clusters/<CLUSTER_NAME> -d '<MODIFIED_CLLUSTER_SPEC>'
```

### Bug Fixes

* **VM High Availability for Hard Affinity Groups:** VMs with hard affinity/anti-affinity policies now evacuate successfully during host failures, preventing error states caused by affinity constraint violations.
* **Proxy Configuration for Compute Service:** Fixed inconsistent handling of proxy environment variables across hypervisor services, eliminating manual configuration file edits previously required for hypervisor-to-DU communication in proxied environments.
* **Network Visibility for Self-Service Users:** Shared external networks now appear in the VM creation network list for self-service users, enabling seamless deployment in multi-tenant environments.
* **Root Volume Selection for Delete on Termination:** Fixed volume deletion logic to correctly identify and delete root volumes when VMs are terminated. Attached volumes now default to preserve on VM deletion.

### Known Limitations

**VM Migration During Ubuntu Host Upgrades**

* VM migration supports only host upgrades from Ubuntu 22.04 to 24.04 (not the reverse direction). VMHA and DRR must be disabled, and hosts drained before the upgrade.

### Known Issues

* Grafana does not get deployed in the case of Self Hosted deployments
* For vGPU support, please refer to the GPU documentation for more information on the issues below:
  * If a GPU PCI device is already bound to a driver/module, it must be unbound to enable vGPU on that device.
* Q35 machine type is not supported with Ubuntu 24.04 and the latest OVMF for UEFI-based GPU passthrough virtual machines.
* DRR does not support vTPM-enabled VMs. Live migration of such VMs is not possible, so these VMs will not be migrated automatically.
* If a host with a persistent storage role assigned goes down and VMs running on that host continue to use the same host for their block storage volumes, a known race condition may cause the evacuation of those VMs to fail. To avoid this, we recommend assigning a block storage role to hosts that are not assigned a hypervisor role. This issue is being fixed in the next release of <code class="expression">space.vars.PRODUCT\_NAME</code>.
* If you are using NFS as the backend for block storage, set the `image_volume_cache_enabled` flag to `false`. If the flag is set to `true` , creating a VM from a cached image volume may lead to incorrect root disk sizing.
* `pcdctl config set` command is not supported for users with MFA enabled.
* Image upload to encrypted volumes is currently unsupported. Volume encryption is currently only supported for empty volumes.
* SSO users cannot log in to <code class="expression">space.vars.PRODUCT\_ACRONYM</code> Grafana.
* If you have a network with a DNS domain assigned, and one of its subnets has **DNS Publish Fixed IP** enabled, then a port created on any subnet within that network will publish a DNS record, irrespective of the subnet's **DNS Publish Fixed IP** setting.
* Virtual machines with a root device other than `/dev/vda` are not identified as volume-backed. As a result, the UI restricts actions available only to volume-backed VMs in such instances.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.platform9.com/release-notes/october-2025-release/october-2025-patch-1-release.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
