The virtio_vq_recordon function is subject to a time-of-check to time-of-use (TOCTOU) race condition.
The product checks the state of a resource before using that resource, but the resource’s state can change between the check and the use in a way that invalidates the results of the check. This can cause the product to perform invalid actions when the resource is in an unexpected state.