Hi Stefan:
I think you mention the descriptor address? I mean the vring PFN register.
/* A 32-bit r/w PFN for the currently selected queue */
#define VIRTIO_PCI_QUEUE_PFN 8
And the linux driver sample code:
iowrite32(virt_to_phys(info->queue) >> VIRTIO_PCI_QUEUE_ADDR_SHIFT,
vp_dev->ioaddr + VIRTIO_PCI_QUEUE_PFN);
-----Original Message-----
From: Stefan Hajnoczi [mailto:[email protected]]
Sent: Wednesday, August 28, 2013 4:07 PM
To: Xie, Huawei
Cc: [email protected]; [email protected]; Stefan Hajnoczi
Subject: Re: [Qemu-devel] Would virtio support 64 bit address for vring
virtqueue?
On Wed, Aug 28, 2013 at 03:18:39AM +0000, Xie, Huawei wrote:
> I am developing virtio user space poll mode network driver. We allocate vring
> physical memory from huge page. On VMs with less than 4GB memory, it works
> well. But on VMs with like 8GB memory, huge page are all allocated from high
> end memory.
> So would virtio support 64bit address for vring virtqueue?
The vring takes guest physical addresses and the C type is __u64 (see
/usr/include/linux/virtio_ring.h). 64-bit addresses are fine.
Stefan