On Thu, 2008-11-06 at 10:49 +0000, Mark McLoughlin wrote: > On Wed, 2008-11-05 at 22:49 -0600, Hollis Blanchard wrote: > > > - info->queue = kzalloc(PAGE_ALIGN(vring_size(num,PAGE_SIZE)), GFP_KERNEL); > > + vring_bytes = PAGE_ALIGN(vring_size(num, VRING_PAGE_SIZE)); > > + info->queue = kzalloc(vring_bytes, GFP_KERNEL); > > You're still aligning the size to PAGE_SIZE rather than VRING_PAGE_SIZE? The original code was calling kzalloc with a multiple of PAGE_SIZE, so I kept that behavior here... > But actually, why do we align the size anyway? I assume it's so that the last page in the ring (containing the "used" fields) could be safely mapped into another guest's address space, without fear of exposing other data. I don't know how valuable that is, but that's not really my concern so I preserved the behavior. > Also might make sense for vring_init() and vring_size() not to take a > pagesize argument and hard-code them to use VRING_PAGE_SIZE. I think that's a good idea. Anthony mentioned earlier the code was done this way so it could be copied to userspace, where PAGE_SIZE is unavailable, but that isn't an issue if we switch to VRING_PAGE_SIZE. -- Hollis Blanchard IBM Linux Technology Center -- To unsubscribe from this list: send the line "unsubscribe kvm-ia64" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html