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

Re: [Xen-devel] [PATCH] x86: fix preemptable page type handling

  • To: Jan Beulich <jbeulich@xxxxxxxxxx>, <xen-devel@xxxxxxxxxxxxxxxxxxx>
  • From: Keir Fraser <keir.fraser@xxxxxxxxxxxxx>
  • Date: Thu, 30 Oct 2008 11:01:41 +0000
  • Cc:
  • Delivery-date: Thu, 30 Oct 2008 04:01:56 -0700
  • List-id: Xen developer discussion <xen-devel.lists.xensource.com>
  • Thread-index: Ack6fuNEIc4Wy6ZyEd2TsQAWy6hiGQ==
  • Thread-topic: [Xen-devel] [PATCH] x86: fix preemptable page type handling

On 30/10/08 09:50, "Jan Beulich" <jbeulich@xxxxxxxxxx> wrote:

> - retain a page reference when PGT_partial is set on a page (and drop
>   it when clearing that flag)
> - don't drop a page reference never acquired when freeing the page type
>   of a page where the allocation of the type got preempted (and never
>   completed)
> - don't acquire a page reference when allocating the page type of a
>   page where freeing the type got preempted (and never completed, and
>   hence didn't drop the respective reference)

I don't understand exactly what's being explained here, so nobody else
really stands a chance. Reference counting (both general count and type
count) and its interaction with preemption is now complicated enough that it
needs an explanation from first principles. That should go both in the
changeset comment and in a code comment somewhere appropriate (I would say
in the comment in mm.h that your patch already modifies) -- it'll be a
rather annoyingly large code comment, but it will have significant value in
describing something that will otherwise make people's brains bleed. If you
can have a go at bashing something out that is basically comprehensive, I
can knock off any rough edges in the explanation before checking in.


Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.