All of lore.kernel.org
 help / color / mirror / Atom feed
From: Julien Grall <julien.grall@linaro.org>
To: Ian Campbell <Ian.Campbell@citrix.com>
Cc: xen-devel@lists.xenproject.org, tim@xen.org,
	stefano.stabellini@citrix.com, patches@linaro.org
Subject: Re: [PATCH v2 03/10] xen/arm: Implement p2m_type_t as an enum
Date: Mon, 09 Dec 2013 16:34:49 +0000	[thread overview]
Message-ID: <52A5F129.9020500@linaro.org> (raw)
In-Reply-To: <1386604743.7812.34.camel@kazak.uk.xensource.com>

On 12/09/2013 03:59 PM, Ian Campbell wrote:
> On Mon, 2013-12-09 at 03:34 +0000, Julien Grall wrote:
>> Until now, Xen doesn't know the type of the page (ram, foreign page, mmio,...).
>> Introduce p2m_type_t with basic types:
>>     - p2m_invalid: Nothing is mapped here
>>     - p2m_ram_rw: Normal read/write guest RAM
>>     - p2m_ram_ro: Read-only guest RAM
>>     - p2m_mmio_direct: Read/write mapping of device memory
>>     - p2m_map_foreign: RAM page from foreign guest
>>     - p2m_grant_map_rw: Read/write grant mapping
>>     - p2m_grant_map_ro: Read-only grant mapping
>>
>> Signed-off-by: Julien Grall <julien.grall@linaro.org>
>>
>> ---
>>     Changes in v2:
>>         - Add comment for future improvement
>>         - Add p2m_max_real_type. Will be use later to check the size of
>>         the enum
>>         - Let the compiler choose the value for each name of the enum
>>         - Add grant mapping type
>> ---
>>  xen/include/asm-arm/p2m.h |   21 +++++++++++++++++++--
>>  1 file changed, 19 insertions(+), 2 deletions(-)
>>
>> diff --git a/xen/include/asm-arm/p2m.h b/xen/include/asm-arm/p2m.h
>> index 0c554a5..f621d15 100644
>> --- a/xen/include/asm-arm/p2m.h
>> +++ b/xen/include/asm-arm/p2m.h
>> @@ -20,6 +20,25 @@ struct p2m_domain {
>>      uint8_t vmid;
>>  };
>>  
>> +/* List of possible type for each page in the p2m
>> + * The number of available bit per page in the p2m for this purpose  is 4 bits.
> 
> s/  / /.
> 
> I think you might also have meant s/p2m/pte/ or "p2m entry"?

Right, I will fix it.

> 
>> + * So it's possible to only have 16 fields. If we run out of value in the
>> + * future, it's possible to use higher value for pseudo-type and don't store
>> + * them in the p2m.
>> + */
>> +typedef enum {
>> +    p2m_invalid = 0,    /* Nothing mapped here */
>> +    p2m_ram_rw,         /* Normal read/write guest RAM */
>> +    p2m_ram_ro,         /* Read-only; writes are silently dropped */
>> +    p2m_mmio_direct,    /* Read/write mapping of genuine MMIO area */
>> +    p2m_map_foreign,    /* Ram pages from foreign domain */
>> +    p2m_grant_map_rw,   /* Read/write grant mapping */
>> +    p2m_grant_map_ro,   /* Read-only grant mapping */
>> +    p2m_max_real_type,  /* Types after this won't be store in the p2m */
> 
> Did you intend to add a BUILD_BUG_ON referencing this last one?

The BUILD_BUG_ON is added by patch #4.

> In any case:
> Acked-by: Ian Campbell <ian.campbell@citrix.com>

Thanks.

-- 
Julien Grall

  reply	other threads:[~2013-12-09 16:34 UTC|newest]

Thread overview: 44+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-12-09  3:33 [PATCH v2 00/10] xen/arm: Handle correctly foreign mapping Julien Grall
2013-12-09  3:33 ` [PATCH v2 01/10] xen/arm: Introduce steps in domain_relinquish_resource Julien Grall
2013-12-09 15:42   ` Ian Campbell
2013-12-09  3:33 ` [PATCH v2 02/10] xen/arm: move mfn_to_p2m_entry in arch/arm/p2m.c Julien Grall
2013-12-09  3:34 ` [PATCH v2 03/10] xen/arm: Implement p2m_type_t as an enum Julien Grall
2013-12-09 15:59   ` Ian Campbell
2013-12-09 16:34     ` Julien Grall [this message]
2013-12-09 16:54       ` Ian Campbell
2013-12-10  2:02         ` Julien Grall
2013-12-09  3:34 ` [PATCH v2 04/10] xen/arm: Store p2m type in each page of the guest Julien Grall
2013-12-09 16:03   ` Ian Campbell
2013-12-09 16:37     ` Julien Grall
2013-12-09 16:53   ` Ian Campbell
2013-12-10  1:55     ` Julien Grall
2013-12-10  9:37       ` Ian Campbell
2013-12-10 13:50         ` Julien Grall
2013-12-10 13:58           ` Ian Campbell
2013-12-09  3:34 ` [PATCH v2 05/10] xen/arm: p2m: Extend p2m_lookup parameters to retrieve the p2m type Julien Grall
2013-12-09 16:04   ` Ian Campbell
2013-12-09  3:34 ` [PATCH v2 06/10] xen/arm: Retrieve p2m type in get_page_from_gfn Julien Grall
2013-12-09 16:06   ` Ian Campbell
2013-12-09 16:50     ` Julien Grall
2013-12-09 16:58       ` Ian Campbell
2013-12-10  2:04         ` Julien Grall
2013-12-09  3:34 ` [PATCH v2 07/10] xen/arm: Introduce relinquish_p2m_mapping to remove refcount every mapped page Julien Grall
2013-12-09 16:28   ` Ian Campbell
2013-12-10  1:31     ` Julien Grall
2013-12-10  2:36       ` Julien Grall
2013-12-10  9:34       ` Ian Campbell
2013-12-09  3:34 ` [PATCH v2 08/10] xen/arm: Implement xen_rem_foreign_from_p2m Julien Grall
2013-12-09 16:31   ` Ian Campbell
2013-12-09 17:08     ` Julien Grall
2013-12-09 17:18       ` Ian Campbell
2013-12-10  1:33         ` Julien Grall
2013-12-09  3:34 ` [PATCH v2 09/10] xen/arm: Set foreign page type to p2m_map_foreign Julien Grall
2013-12-09 16:40   ` Ian Campbell
2013-12-10  1:46     ` Julien Grall
2013-12-10  1:51     ` Julien Grall
2013-12-10  9:37       ` Ian Campbell
2013-12-10 14:44         ` Julien Grall
2013-12-10 15:13           ` Ian Campbell
2013-12-09  3:34 ` [PATCH v2 10/10] xen/arm: grant-table: Support read-only mapping Julien Grall
2013-12-09 16:41   ` Ian Campbell
2013-12-09 11:32 ` [PATCH v2 00/10] xen/arm: Handle correctly foreign mapping George Dunlap

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=52A5F129.9020500@linaro.org \
    --to=julien.grall@linaro.org \
    --cc=Ian.Campbell@citrix.com \
    --cc=patches@linaro.org \
    --cc=stefano.stabellini@citrix.com \
    --cc=tim@xen.org \
    --cc=xen-devel@lists.xenproject.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.