In the Linux kernel, the following vulnerability has been resolved: crypto: virtio - Add spinlock protection with virtqueue notification When VM boots with one virtio-crypto PCI device and builtin backend, run openssl benchmark command with multiple processes, such as openssl speed -evp aes-128-cbc -engine afalg -seconds 10 -multi 32 openssl processes will hangup and there is error reported like this: virtio_crypto virtio0: dataq.0:id 3 is not a head! It seems that the data virtqueue need protection when it is handled for virtio done notification. If the spinlock protection is added in virtcrypto_done_task(), openssl benchmark with multiple processes works well.
https://git.kernel.org/stable/c/e69a7b0a71b6561b3b6459f1fded8d589f2e8ac2
https://git.kernel.org/stable/c/d6f0d586808689963e58fd739bed626ff5013b24
https://git.kernel.org/stable/c/c9e594194795c86ca753ad6ed64c2762e9309d0d
https://git.kernel.org/stable/c/c0a0ded3bb7fd45f720faa48449a930153257d3a
https://git.kernel.org/stable/c/8ee8ccfd60bf17cbdab91069d324b5302f4f3a30
https://git.kernel.org/stable/c/552475d0b6cece73a52c0fa5faa0ce45e99df74b
https://git.kernel.org/stable/c/49c57c6c108931a914ed94e3c0ddb974008260a3