| Guidance | Action for Hyper-V | Action for VMware | |
|---|---|---|---|
| ☐ | Verify Error-Correcting Code (ECC) memory is present and enabled on the host — necessary, not sufficient | Confirm via the host BMC (baseboard management controller, such as Dell iDRAC / HPE iLO) and firmware that physical RAM is registered ECC and ECC is enabled. Note: standard ECC corrects single-bit and only detects double-bit errors. The observed corruption is multi-bit and can exceed ECC, and a bus/DMA-path transient is not covered by DIMM ECC at all. Treat ECC as risk-reduction, not a guaranteed catch. |
Confirm host RAM is ECC and enabled via vendor firmware / iDRAC / iLO. Confirm memory sensors are healthy under Host > Monitor > Hardware > Sensors. Same ECC caveat applies: multi-bit and bus/DMA transients are not fully covered. |
| ☐ | Enable and review memory and machine-check error logging — primary diagnostic | Review the host BMC log (iDRAC Lifecycle Log / iLO IML) and Event Viewer > System for WHEA-Logger machine-check events — IDs 17 / 18 / 19 / 47 — covering memory and PCIe/bus, not only DIMM ECC counts. Configure alerting, and correlate any event against the corruption's dated write windows. This is a front-line diagnostic for this failure mode, not background hygiene. | Review Host > Monitor > Hardware Health and the host BMC log for memory and PCIe / machine-check events. Treat any correctable-error growth, any uncorrectable event, or any PCIe/bus machine-check as in scope, and correlate against the corruption windows. |
| ☐ | Run an extended memory test on any host with repeated corruption | Migrate guests off and run a multi-pass, ECC-aware memory test (e.g. MemTest86, EFI build) on the bare-metal host. Virtualization hides DIMM and bus faults from the guest, so the test must run on the host. | Same action. Test the physical host, not the guest. |
| ☐ | Reserve VM memory; avoid overcommit (hygiene) | Disable Dynamic Memory for the viewLinc VM (VM Settings > Memory); assign fixed RAM. Reduces memory pressure under load; this is not established as the trigger — apply as hygiene. | Set a full memory Reservation (“Reserve all guest memory”) and ensure the host is not overcommitted. This is hygiene, as for Hyper-V, and not established as the trigger. |
| ☐ | Constrain balloon / page-sharing reclamation (hygiene) | Do not run VSS or Hyper-V checkpoints against the live HDB volume during writes. Do not Live Migrate the VM under active write load. | The full reservation above prevents this VM from being ballooned. Confirm
Transparent Page Sharing has not been re-enabled host-wide
(Mem.ShareForceSalting). This is not established as the
trigger. |
| ☐ | Exclude BDB files from all kernel I/O filter drivers (elevated) | Enumerate active minifilters and confirm none intercept the BDB volume: fltmc filters fltmc instances Review AV, EDR (Carbon Black, Defender for Endpoint), DLP, file-level encryption, and backup agents. A co-resident filter driver in the write path is one of the two mechanisms consistent with the corruption. | Same guest action. Also confirm no hypervisor-level agentless inspection (NSX Guest Introspection) operates on the BDB files. |