If last avail idx is not equal to cached avail idx, we're sure there's
still available buffers in the virtqueue so there's no need to re-read
avail idx. So let's skip this to avoid unnecessary userspace memory
access and memory barrier. Pktgen test show about 3% improvement on rx
pps.
Signed-off-b
On 2017年02月06日 01:15, Christoph Hellwig wrote:
This lets IRQ layer handle dispatching IRQs to separate handlers for the
case where we don't have per-VQ MSI-X vectors, and allows us to greatly
simplify the code based on the assumption that we always have interrupt
vector 0 (legacy INTx or config
On 2017年02月06日 01:15, Christoph Hellwig wrote:
We don't really need struct virtio_pci_vq_info, as most field in there
are redundant:
- the vq backpointer is not strictly neede to start with
- the entry in the vqs list is not needed - the generic virtqueue already
has list, we only need
The netvsc part is already in net-next. This patch is not needed.
The part that removes the per-channel state can be in another patch.
___
Virtualization mailing list
Virtualization@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/li
Setting the IF flag can cause an VM exit. So we should avoid touching
the IF flag until absolutely necessary. This patch change the way
the paravirt arch_local_irq_restore() works by checking the previous
flags value and call arch_local_irq_enable() only if the IF flag was
set previously.
On a 32