So I migrated my xpenology server from DS918+ model to DS3622xs, and the nvme cache no longer works since the model number no longer exist in libsynonvme.so.1. I dig into the libsynonvme.so.1 and found it might check your pcie location to have the nvme drive works properly. After inspect the file, I found it just checks /etc.defaults/.extensionPorts and we just need to modify that.
Here are the steps:
1. Check your nvme pci location(in my case it's 0000:00:01.0😞
udevadm inf
For any Proxmox VE users that may be struggling with direct passthrough of an NVMe PCI controller (not para-virtualized via QEMU) - which means real SMART value, etc. - I was able to accomplish this by doing the following:
Create Q35 machine with OVMF firmware. Uncheck creation of an EFI disk (note there'll be a warning when booting the VM due to the missing EFI disk, but it doesn't matter). Add a PCI device, choose your NVMe controller, and make sure to check the 'PCI Express' check