Re: large page size virtio issues

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Rusty Russell wrote:
On Wednesday 05 November 2008 09:14:20 Hollis Blanchard wrote:
Hi Rusty, I'm using a patch that changes the Linux base page size to
64K. (This is actually pretty common in ppc64 world, but I happen to be
trying it on ppc32.)

I'm seeing a problem with virtio. I think at least part of it can be
explained by qemu's TARGET_PAGE_BITS==12, and the guest's
PAGE_SHIFT==16. The guest allocates the queue, then passes the pfn (pa

PAGE_SHIFT) to the virtio backend (vp_find_vq()). The backend then
calculates the pa as pfn << TARGET_PAGE_BITS.

I have to run right now, but quickly changing qemu TARGET_PAGE_BITS to
16 got me a little further but still didn't work. Any thoughts?

I see Anthony hardwired page size into the queue activation ABI for virtio_pci.

So did you FWIW, virtio-balloon passes PFNs which are computed based on PAGE_SHIFT.

I think that this should be an actual 4096 (or 12) rather than depending on guest page size:

So is the issue that PPC can support 4k or 16k pages, and the guest happens to always use 16k pages? Does the guest set any global flag indicating it is using 16k pages? Is this anyway we could detect this in QEMU?

I don't much like the idea of globally hard coding it to 4k. I'd rather make it architecture specific.

Regards,

Anthony Liguori

virtio_pci.c:247:
	iowrite32(virt_to_phys(info->queue) >> PAGE_SHIFT,
		  vp_dev->ioaddr + VIRTIO_PCI_QUEUE_PFN);

Anthony?

Cheers,
Rusty.

--
To unsubscribe from this list: send the line "unsubscribe kvm-ppc" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [KVM Development]     [KVM ARM]     [KVM ia64]     [Linux Virtualization]     [Linux USB Devel]     [Linux Video]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Big List of Linux Books]

  Powered by Linux