Alright, I took another approach at this.

Looking directly at the source for different kernels over at kernel.org I can see that the NVMe driver has SR-IOV support from kernel version 4.8.
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/tree/drivers/nvme/host/pci.c?h=v4.8#n2015

It's very interesting for virtualized workloads because SR-IOV means you can assign the NVMe disk to different VMs directly and bypass the hypervisor. This is the same for NICs at 10/25/40/100 gigabit. There will be a significant performance drop if you don't use SR-IOV.