All of lore.kernel.org
 help / color / mirror / Atom feed
From: Hollis Blanchard <hollisb@us.ibm.com>
To: kvm-ia64@vger.kernel.org
Subject: Re: [PATCH] virtio: Define and use per-architecture "pfn shift"
Date: Thu, 06 Nov 2008 15:50:26 +0000	[thread overview]
Message-ID: <1225986626.8620.28.camel@localhost.localdomain> (raw)
In-Reply-To: <200811052254.04409.hollisb@us.ibm.com>

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


WARNING: multiple messages have this Message-ID (diff)
From: Hollis Blanchard <hollisb@us.ibm.com>
To: Mark McLoughlin <markmc@redhat.com>
Cc: rusty@rustcorp.com.au, kvm@vger.kernel.org,
	kvm-ppc@vger.kernel.org, kvm-ia64@vger.kernel.org
Subject: Re: [PATCH] virtio: Define and use per-architecture "pfn shift"
Date: Thu, 06 Nov 2008 15:50:26 +0000	[thread overview]
Message-ID: <1225986626.8620.28.camel@localhost.localdomain> (raw)
In-Reply-To: <1225968591.7284.9.camel@blaa>

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


WARNING: multiple messages have this Message-ID (diff)
From: Hollis Blanchard <hollisb@us.ibm.com>
To: Mark McLoughlin <markmc@redhat.com>
Cc: rusty@rustcorp.com.au, kvm@vger.kernel.org,
	kvm-ppc@vger.kernel.org, kvm-ia64@vger.kernel.org
Subject: Re: [PATCH] virtio: Define and use per-architecture "pfn shift" constants
Date: Thu, 06 Nov 2008 09:50:26 -0600	[thread overview]
Message-ID: <1225986626.8620.28.camel@localhost.localdomain> (raw)
In-Reply-To: <1225968591.7284.9.camel@blaa>

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


  parent reply	other threads:[~2008-11-06 15:50 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-11-06  4:54 [PATCH] virtio: Define and use per-architecture "pfn shift" constants Hollis Blanchard
2008-11-06  4:54 ` Hollis Blanchard
2008-11-06  4:54 ` Hollis Blanchard
2008-11-06 10:49 ` [PATCH] virtio: Define and use per-architecture "pfn shift" Mark McLoughlin
2008-11-06 10:49   ` [PATCH] virtio: Define and use per-architecture "pfn shift" constants Mark McLoughlin
2008-11-06 10:49   ` [PATCH] virtio: Define and use per-architecture "pfn shift" Mark McLoughlin
2008-11-06 13:59 ` [PATCH] virtio: Define and use per-architecture "pfn shift" constants Anthony Liguori
2008-11-06 13:59   ` Anthony Liguori
2008-11-06 13:59   ` Anthony Liguori
2008-11-06 15:50 ` Hollis Blanchard [this message]
2008-11-06 15:50   ` Hollis Blanchard
2008-11-06 15:50   ` [PATCH] virtio: Define and use per-architecture "pfn shift" Hollis Blanchard
2008-11-06 16:22 ` [PATCH] virtio: Define and use per-architecture "pfn shift" constants Anthony Liguori
2008-11-06 16:22   ` Anthony Liguori
2008-11-06 16:22   ` Anthony Liguori
2008-11-06 20:07 ` Anthony Liguori
2008-11-06 20:07   ` Anthony Liguori
2008-11-06 20:07   ` Anthony Liguori
  -- strict thread matches above, loose matches on Subject: below --
2008-11-06  4:49 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=1225986626.8620.28.camel@localhost.localdomain \
    --to=hollisb@us.ibm.com \
    --cc=kvm-ia64@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.