From: Anthony Liguori <aliguori@us.ibm.com>
To: kvm-ppc@vger.kernel.org
Subject: Re: large page size virtio issues
Date: Wed, 05 Nov 2008 14:06:50 +0000 [thread overview]
Message-ID: <4911A87A.4010209@us.ibm.com> (raw)
In-Reply-To: <1225836860.15410.32.camel@localhost.localdomain>
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.
>
next prev parent reply other threads:[~2008-11-05 14:06 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-11-04 22:14 large page size virtio issues Hollis Blanchard
2008-11-05 12:16 ` Rusty Russell
[not found] ` <200811052316.47127.rusty-8n+1lVoiYb80n/F98K4Iww@public.gmane.org>
2008-11-05 19:50 ` Hollis Blanchard
2008-11-05 19:50 ` Hollis Blanchard
2008-11-05 20:08 ` Anthony Liguori
2008-11-05 20:08 ` Anthony Liguori
[not found] ` <4911FD32.9050301-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2008-11-05 20:29 ` Hollis Blanchard
2008-11-05 20:29 ` Hollis Blanchard
2008-11-05 14:06 ` Anthony Liguori [this message]
[not found] ` <4911A87A.4010209-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2008-11-05 16:32 ` Hollis Blanchard
2008-11-05 16:32 ` Hollis Blanchard
[not found] ` <1225902738.26835.51.camel-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2008-11-05 17:25 ` Anthony Liguori
2008-11-05 17:25 ` Anthony Liguori
2008-11-05 17:31 ` Hollis Blanchard
2008-11-05 17:31 ` Hollis Blanchard
[not found] ` <1225906304.26835.75.camel-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2008-11-05 17:33 ` Anthony Liguori
2008-11-05 17:33 ` Anthony Liguori
2008-11-05 17:46 ` Hollis Blanchard
2008-11-05 17:46 ` Hollis Blanchard
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4911A87A.4010209@us.ibm.com \
--to=aliguori@us.ibm.com \
--cc=kvm-ppc@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.