Signed-off-by: Sergej Proskurin
Acked-by: Razvan Cojocaru
---
Cc: Razvan Cojocaru
Cc: Tamas K Lengyel
Cc: Ian Jackson
Cc: Wei Liu
---
tools/tests/xen-access/xen-access.c | 27 +--
1 file changed, 17 insertions(+), 10 deletions(-)
diff --git a/tools/tests/xen-access
Hi Andrew,
On 08/01/2016 07:21 PM, Andrew Cooper wrote:
> On 01/08/16 18:10, Sergej Proskurin wrote:
>> diff --git a/xen/include/asm-arm/altp2m.h b/xen/include/asm-arm/altp2m.h
>> index 0711796..d47b249 100644
>> --- a/xen/include/asm-arm/altp2m.h
>> +++ b/xen/include/a
Hi Julien,
On 08/01/2016 09:55 PM, Julien Grall wrote:
>
>
> On 01/08/2016 20:20, Tamas K Lengyel wrote:
>> On Mon, Aug 1, 2016 at 12:15 PM, Julien Grall
>> wrote:
>>> On 01/08/16 18:10, Sergej Proskurin wrote:
>>>>
>>>>
>>>>
Hi Razvan,
On 08/02/2016 11:14 AM, Razvan Cojocaru wrote:
> On 08/01/2016 08:10 PM, Sergej Proskurin wrote:
>> This commit extends xen-access by a simple test of the functionality
>> provided by "xc_altp2m_change_gfn". The idea is to dynamically remap a
>> tra
Hi Wei,
On 08/02/2016 01:59 PM, Wei Liu wrote:
> On Mon, Aug 01, 2016 at 07:10:26PM +0200, Sergej Proskurin wrote:
>> The current implementation allows to set the parameter HVM_PARAM_ALTP2M.
>> This parameter allows further usage of altp2m on ARM. For this, we
>> define
2/08/16 08:34, Julien Grall wrote:
>>>>>> Hi Andrew,
>>>>>>
>>>>>> On 02/08/2016 00:14, Andrew Cooper wrote:
>>>>>>> On 01/08/2016 19:15, Julien Grall wrote:
>>>>>>>> On 01/08/16 18:10, Sergej Proskurin
Hi Julien,
On 08/03/2016 04:08 PM, Julien Grall wrote:
> Hello Sergej,
>
> Please try to reply to all when answering on the ML. Otherwise the
> answer may be delayed/lost.
>
Right, sorry.
> On 03/08/16 13:45, Sergej Proskurin wrote:
>> The interesting part about #VE is
Hi Julien,
On 08/03/2016 06:54 PM, Julien Grall wrote:
> Hello Sergej,
>
> On 01/08/16 18:10, Sergej Proskurin wrote:
>> This commit moves the altp2m-related code from x86 to ARM. Functions
>> that are no yet supported notify the caller or print a BUG message
>> statin
Hi Julien,
>> Hello Sergej,
>>
>> Title: s/altp2m/p2m/
I will adapt the titles of all patches, thank you.
>>
>> On 01/08/16 18:10, Sergej Proskurin wrote:
>>> The struct vttbr introduces a simple way to precisely access the
>>> individual fields o
On 08/04/2016 06:04 PM, Julien Grall wrote:
>
>
> On 04/08/16 17:01, Sergej Proskurin wrote:
>> Hi Julien,
>>
>>
>> On 08/03/2016 06:54 PM, Julien Grall wrote:
>>> Hello Sergej,
>>>
>>> On 01/08/16 18:10, Sergej Proskurin wrote:
&g
Hi Julien,
On 08/03/2016 08:12 PM, Julien Grall wrote:
> Hello Sergej,
>
> On 01/08/16 18:10, Sergej Proskurin wrote:
>> The p2m initialization now invokes initialization routines responsible
>> for the allocation and initialization of altp2m structures. The same
>> a
Hi Julien,
On 08/04/2016 06:51 PM, Julien Grall wrote:
>
>
> On 04/08/16 17:22, Sergej Proskurin wrote:
>>
>> On 08/04/2016 06:04 PM, Julien Grall wrote:
>>>
>>>
>>> On 04/08/16 17:01, Sergej Proskurin wrote:
>>>> Hi Julien,
>>&g
Hi Julien,
On 08/03/2016 07:40 PM, Julien Grall wrote:
> Hello Sergej,
>
> Title: s/altp2m/p2m/ and please drop the full stop.
Ok.
>
> On 01/08/16 18:10, Sergej Proskurin wrote:
>> This commit pulls out generic init/teardown functionality out of
>> p2m_init and p2m
Hi Julien,
On 08/05/2016 11:20 AM, Julien Grall wrote:
> On 05/08/16 07:53, Sergej Proskurin wrote:
>> Hi Julien,
>
> Hello Sergej,
>
>> On 08/03/2016 08:12 PM, Julien Grall wrote:
>>> On 01/08/16 18:10, Sergej Proskurin wrote:
>>>> +int altp2m_init
Hi Julien,
On 08/05/2016 11:16 AM, Julien Grall wrote:
>
>
> On 05/08/16 08:26, Sergej Proskurin wrote:
>> Hi Julien,
>
> Hello Sergej,
>
>>
>> On 08/03/2016 07:40 PM, Julien Grall wrote:
>
> [...]
>
>>>> +{
>>>> +
Hi Julien,
On 08/04/2016 06:15 PM, Julien Grall wrote:
>
>
> On 04/08/16 17:11, Sergej Proskurin wrote:
>>>>> diff --git a/xen/include/asm-arm/processor.h
>>>>> b/xen/include/asm-arm/processor.h
>>>>> index 15bf890..f8ca18c 100644
>&
Hi Julien,
On 08/03/2016 07:57 PM, Julien Grall wrote:
> Hello Sergej,
>
> Title: s/altp2m/p2m/
>
> On 01/08/16 18:10, Sergej Proskurin wrote:
>> The initially named function "p2m_alloc_table" allocated pages solely
>> required for the host's p2m. The n
Hi Julien,
On 08/03/2016 08:02 PM, Julien Grall wrote:
> Hello Sergej,
>
> Title: s/altp2m/p2m/ and please remove the full stop.
>
> Also this is not really a cosmetic change.
Ok, thank you.
>
> On 01/08/16 18:10, Sergej Proskurin wrote:
>> This commit changes the
Hi Julien,
On 08/03/2016 08:41 PM, Julien Grall wrote:
> Hello Sergej,
>
> On 01/08/16 18:10, Sergej Proskurin wrote:
>> The HVMOP_altp2m_set_domain_state allows to activate altp2m on a
>> specific domain. This commit adopts the x86
>> HVMOP_altp2m_set_domain_state im
(I did not finish answering all questions in the previous mail)
Hi Julien,
On 08/03/2016 08:41 PM, Julien Grall wrote:
> Hello Sergej,
>
> On 01/08/16 18:10, Sergej Proskurin wrote:
>> The HVMOP_altp2m_set_domain_state allows to activate altp2m on a
>> specific domain. T
Hi Julien,
On 08/03/2016 08:44 PM, Julien Grall wrote:
> Hello Sergej,
>
> On 01/08/16 18:10, Sergej Proskurin wrote:
>> The current implementation differentiates between flushing and
>> destroying altp2m views. This commit adds the function altp2m_flush,
>> w
Hi Julien,
On 08/03/2016 08:48 PM, Julien Grall wrote:
> Hello Sergej,
>
> On 01/08/16 18:10, Sergej Proskurin wrote:
>> Signed-off-by: Sergej Proskurin
>> ---
>> Cc: Stefano Stabellini
>> Cc: Julien Grall
>> ---
>> v2: Cosmetic fixes.
Hi Julien,
On 08/04/2016 01:46 PM, Julien Grall wrote:
> Hello Sergej,
>
> On 01/08/16 18:10, Sergej Proskurin wrote:
>> Signed-off-by: Sergej Proskurin
>> ---
>> Cc: Stefano Stabellini
>> Cc: Julien Grall
>> ---
>> v2: Substituted the call t
Hi Julien,
On 08/04/2016 01:51 PM, Julien Grall wrote:
> Hello Sergej,
>
> On 01/08/16 18:10, Sergej Proskurin wrote:
>> Signed-off-by: Sergej Proskurin
>> ---
>> Cc: Stefano Stabellini
>> Cc: Julien Grall
>> ---
>> xen/arch/arm/altp2m.c
Hi Julien,
On 08/04/2016 01:55 PM, Julien Grall wrote:
> Hello,
>
> On 01/08/16 18:10, Sergej Proskurin wrote:
>> This commit adapts the function "p2m_restore_state" in a way that the
>> currently active altp2m table is considered during state restoration.
>&g
Hi Julien,
On 08/04/2016 01:59 PM, Julien Grall wrote:
> Hello Sergej,
>
> On 01/08/16 18:10, Sergej Proskurin wrote:
>> The function get_page_from_gva uses ARM's hardware support to translate
>> gva's to machine addresses. This function is used, among others, fo
Hi Julien,
On 08/04/2016 02:04 PM, Julien Grall wrote:
> Hello Sergej,
>
> On 01/08/16 18:10, Sergej Proskurin wrote:
>> This commit extends the functionality of the function "__p2m_lookup".
>> The function "__p2m_lookup" performs the necessary steps g
Hi Julien,
On 08/04/2016 02:06 PM, Julien Grall wrote:
> Hello Sergej,
>
> On 01/08/16 18:10, Sergej Proskurin wrote:
>> This commit changes the prototype of the following functions:
>> - apply_p2m_changes
>> - apply_one_level
>> - p2m_insert_mapping
>> -
Hi Julien,
On 08/04/2016 04:19 PM, Julien Grall wrote:
> Hello Sergej,
>
> On 01/08/16 18:10, Sergej Proskurin wrote:
>> int p2m_alloc_table(struct p2m_domain *p2m)
>> {
>> unsigned int i;
>> @@ -1920,7 +1948,7 @@ long p2m_set_mem_access(struct dom
Hi Julien,
On 08/04/2016 04:50 PM, Julien Grall wrote:
> Hello Sergej,
>
> On 01/08/16 18:10, Sergej Proskurin wrote:
>> This commit introduces the function "altp2m_propagate_change" that is
>> responsible to propagate changes applied to the host's p2m to a
Hi Julien,
On 08/04/2016 03:50 PM, Julien Grall wrote:
> Hello Sergej,
>
> On 01/08/16 18:10, Sergej Proskurin wrote:
>> This commit adds the function "altp2m_lazy_copy" implementing the altp2m
>> paging mechanism. The function "altp2m_lazy_copy" lazily
Hi Julien,
On 08/04/2016 06:59 PM, Julien Grall wrote:
> Hi Sergej,
>
> On 01/08/16 18:10, Sergej Proskurin wrote:
>> diff --git a/xen/arch/arm/traps.c b/xen/arch/arm/traps.c
>> index 12be7c9..628abd7 100644
>> --- a/xen/arch/arm/traps.c
>> +++ b/xen/arch/arm/t
Hi Julien,
On 08/04/2016 04:04 PM, Julien Grall wrote:
> Hello Sergej,
>
> On 01/08/16 18:10, Sergej Proskurin wrote:
>> This commit adds the functionality to change mfn mappings for specified
>> gfn's in altp2m views. This mechanism can be used within the context of
On 08/06/2016 03:20 PM, Julien Grall wrote:
>
>
> On 06/08/2016 09:54, Sergej Proskurin wrote:
>> Hi Julien,
>
> Hello Sergej,
>
>> On 08/04/2016 06:15 PM, Julien Grall wrote:
>>>
>>>
>>> On 04/08/16 17:11, Sergej Proskurin wrote:
>&
On 08/06/2016 03:26 PM, Julien Grall wrote:
> On 06/08/2016 09:43, Sergej Proskurin wrote:
>> Hi Julien,
>
> Hello Sergej,
>
>> On 08/05/2016 11:16 AM, Julien Grall wrote:
>>> On 05/08/16 08:26, Sergej Proskurin wrote:
>>>> On 08/03/2016 07:40 PM, Ju
On 08/06/2016 03:36 PM, Julien Grall wrote:
>
>
> On 06/08/2016 10:54, Sergej Proskurin wrote:
>> Hi Julien,
>
> Hello Sergej,
>
>> On 08/04/2016 01:46 PM, Julien Grall wrote:
>>> Hello Sergej,
>>>
>>> On 01/08/16 18:10, Ser
Hi Julien,
On 08/06/2016 03:45 PM, Julien Grall wrote:
>
>
> On 06/08/2016 11:38, Sergej Proskurin wrote:
>> Hi Julien,
>
> Hello Serge,
>
>> On 08/04/2016 01:59 PM, Julien Grall wrote:
>>> Hello Sergej,
>>>
>>> On 01/08/16 18:10, Sergej
Hi Julien,
On 08/06/2016 03:52 PM, Julien Grall wrote:
>
>
> On 06/08/2016 12:26, Sergej Proskurin wrote:
>> Hi Julien,
>
> Hello Sergej,
>
>> On 08/04/2016 04:50 PM, Julien Grall wrote:
>>> On 01/08/16 18:10, Sergej Proskurin wrote:
>>>> +
Hi Julien,
On 08/06/2016 04:14 PM, Julien Grall wrote:
> On 06/08/2016 13:51, Sergej Proskurin wrote:
>> Hi Julien,
>
> Hello Sergej,
>
>> On 08/04/2016 03:50 PM, Julien Grall wrote:
>>> Hello Sergej,
>>>
>>> On 01/08/16 18:10, Sergej
Hi Julien,
I just wanted to indicate that this email did not have any contents from
your side.
On 08/06/2016 04:21 PM, Julien Grall wrote:
>
>
> On 06/08/2016 13:57, Sergej Proskurin wrote:
>> Hi Julien,
>
> Hello Sergej,
>
>
>> On 08/04/2016 06:59 PM,
Hi Julien,
On 08/06/2016 04:34 PM, Julien Grall wrote:
>
>
> On 06/08/2016 14:45, Sergej Proskurin wrote:
>> Hi Julien,
>
> Hello Sergej,
>
>> On 08/04/2016 04:04 PM, Julien Grall wrote:
>>> On 01/08/16 18:10, Sergej Proskurin wrote:
>>
Hi Julien,
>>> @@ -1460,7 +1469,16 @@ static int p2m_init_hostp2m(struct domain *d)
>>>
>>> int p2m_init(struct domain *d)
>>> {
>>> -return p2m_init_hostp2m(d);
>>> +int rc;
>>> +
>>> +rc = p2m_init_hostp2m(d);
>>> +if ( rc )
>>> +return rc;
>>> +
>>> +if ( altp2m_e
Hi Julien,
>>> [...]
>>>
switch ( fsc )
{
+case FSC_FLT_TRANS:
+{
+if ( altp2m_active(d) )
+{
+const struct npfec npfec = {
+.insn_fetch = 1,
+.gla_valid = 1,
+
Hi Julien,
On 08/11/2016 10:47 AM, Julien Grall wrote:
>
>
> On 10/08/2016 11:32, Sergej Proskurin wrote:
>> Hi Julien,
>
> Hello Sergej,
>
>>>>> [...]
>>>>>
>>>>>> switch ( fsc )
>>>>>>
Hi Julien,
[...]
> +static int p2m_set_entry(struct p2m_domain *p2m,
> + gfn_t sgfn,
> + unsigned long todo,
> + mfn_t smfn,
> + p2m_type_t t,
> + p2m_access_t a)
> +{
> +in
Hi Wei,
On 08/11/2016 06:00 PM, Wei Liu wrote:
> Sorry for the late reply.
>
No worries, it's all good :) Thanks for your reply.
[...]
("smbios_firmware", string),
("acpi_firmware",string),
Signed-off-by: Sergej Proskurin
---
Cc: Stefano Stabellini
Cc: Julien Grall
---
v2: Substituted the call to tlb_flush for p2m_flush_table.
Added comments.
Cosmetic fixes.
v3: Changed the locking mechanism to "p2m_write_lock" inside the
function "altp2m_destroy_by_i
Signed-off-by: Sergej Proskurin
---
Cc: Stefano Stabellini
Cc: Julien Grall
---
v2: Dump p2m information of the hostp2m and all altp2m views.
---
xen/arch/arm/p2m.c | 20
1 file changed, 20 insertions(+)
diff --git a/xen/arch/arm/p2m.c b/xen/arch/arm/p2m.c
index dea3038
The HVMOP_altp2m_set_domain_state allows to activate altp2m on a
specific domain. This commit adopts the x86
HVMOP_altp2m_set_domain_state implementation.
Signed-off-by: Sergej Proskurin
---
Cc: Stefano Stabellini
Cc: Julien Grall
---
v2: Dynamically allocate memory for altp2m views only when
Signed-off-by: Sergej Proskurin
---
Cc: Stefano Stabellini
Cc: Julien Grall
---
v3: Extended the function "altp2m_switch_domain_altp2m_by_id" so that if
the guest domain indirectly calles this function, the current vcpu also
changes the altp2m view without performing an explic
This commit adds the functionality to change mfn mappings for specified
gfn's in altp2m views. This mechanism can be used within the context of
VMI, e.g., to establish stealthy debugging.
Signed-off-by: Sergej Proskurin
---
Cc: Stefano Stabellini
Cc: Julien Grall
---
v3: Moved the altp2m
The p2m initialization now invokes initialization routines responsible
for the allocation and initialization of altp2m structures. The same
applies to teardown routines. The functionality has been adopted from
the x86 altp2m implementation.
Signed-off-by: Sergej Proskurin
---
Cc: Stefano
violations will trap into Xen and be forced by xen-access
to switch to the default view (altp2m[0]) as before. The introduced test
can be invoked by providing the argument "altp2m_remap".
Signed-off-by: Sergej Proskurin
---
Cc: Razvan Cojocaru
Cc: Tamas K Lengyel
Cc: Ian Jackson
ut losing
the accessibility of the "struct domain". The need for this pointer is
shown in the following commits.
Signed-off-by: Sergej Proskurin
---
Cc: Stefano Stabellini
Cc: Julien Grall
---
xen/arch/arm/p2m.c| 1 +
xen/include/asm-arm/p2m.h | 3 +++
2 files changed, 4 insertio
enting the altp2m paging mechanism.
Signed-off-by: Sergej Proskurin
---
Cc: Stefano Stabellini
Cc: Julien Grall
---
xen/arch/arm/traps.c | 30 +-
1 file changed, 13 insertions(+), 17 deletions(-)
diff --git a/xen/arch/arm/traps.c b/xen/arch/arm/traps.c
index da56cc
This commit introduces the macro "p2m_get_active_p2m" returning the
currently active (alt)p2m. The need for this macro will be shown in the
following commits.
Signed-off-by: Sergej Proskurin
---
Cc: Stefano Stabellini
Cc: Julien Grall
---
xen/arch/arm/p2m.c | 3 +++
1 file
f
entries were freed in the host's p2m, but still reside in one or more of
the alternate p2m's, the change will be propagated to these functions as
will be shown in the following commits.
Signed-off-by: Sergej Proskurin
---
Cc: Stefano Stabellini
Cc: Julien Grall
---
xen/arch/arm/p2m
s p2m
table for the associated gva to ma translation. This is required at this
point, as altp2m lazily copies pages from the host's p2m and even might
be flushed because of changes to the host's p2m (as it is done within
the context of memory ballooning).
Signed-off-by: Sergej Proskurin
-
This commit adapts the function "p2m_restore_state" in a way that the
currently active altp2m table is considered during state restoration.
Signed-off-by: Sergej Proskurin
---
Cc: Stefano Stabellini
Cc: Julien Grall
---
v3: Moved declaration of "altp2m_switch_domain_altp2m_by_
-off-by: Sergej Proskurin
---
Cc: Ian Jackson
Cc: Wei Liu
Cc: Jan Beulich
Cc: Andrew Cooper
Cc: Daniel De Graaf
v2: Rename HVMALTP2M_* to XEN_ALTP2M_*
Relax xsm check to XSM_DM_PRIV for external-only mode
v3: Introduce macro LIBXL_HAVE_ARM_ALTP2M in parallel to the former
kes only the vmid that is
to be freed as argument.
Signed-off-by: Sergej Proskurin
---
Cc: Stefano Stabellini
Cc: Julien Grall
---
v3: Changed function prototypes and implementation of the functions
"p2m_alloc_vmid" and "p2m_free_vmid".
Changes in "p2m_alloc_vmid
The function "p2m_alloc_table" should be able to allocate 2nd stage
translation tables not only for the host's p2m but also for alternate
p2m's.
Signed-off-by: Sergej Proskurin
---
Cc: Stefano Stabellini
Cc: Julien Grall
---
v2: Removed altp2m table initialization from &
This commit adds a p2m class to the struct p2m_domain to distinguish
between the host's original p2m and alternate p2m's. The need for this
functionality will be shown in the following commits.
Signed-off-by: Sergej Proskurin
---
Cc: Stefano Stabellini
Cc: Julien Grall
---
xen/inclu
This commit makes sure that the page reference count is updated through
the function "p2m_put_l3_page" only the entries have been freed from the
hosts's p2m.
Signed-off-by: Sergej Proskurin
---
Cc: Stefano Stabellini
Cc: Julien Grall
---
xen/arch/arm/p2m.c | 2 +-
1 file chang
This commit introduces the following functions:
* remove_altp2m_entry
* modify_altp2m_entry
These functions are responsible to manage an altp2m view's entries and
their attributes.
Signed-off-by: Sergej Proskurin
---
Cc: Stefano Stabellini
Cc: Julien Grall
---
v3: Changed the fun
lled/invalid entries.
Signed-off-by: Sergej Proskurin
---
Cc: Stefano Stabellini
Cc: Julien Grall
---
v3: Cosmetic fixes.
Changed the locking mechanism to "p2m_write_lock" inside the
function "altp2m_reset".
Removed TLB flushing and resetting of the max_mapped_gfn
This commit does not change or introduce any additional functionality
but rather is a part of the following commit that alters the
functionality of the function "p2m_alloc_vmid".
Signed-off-by: Sergej Proskurin
---
Cc: Stefano Stabellini
Cc: Julien Grall
---
xen/arch/arm/
This commit substitutes the direct access of the host's p2m
(&d->arch.p2m) for the macro "p2m_get_hostp2m". This macro simplifies
the differentiation between the host's p2m and introduced alternative
p2m's, in the following commits.
Signed-off-by: Sergej Proskurin
alization/teardown of altp2m views.
Signed-off-by: Sergej Proskurin
---
Cc: Stefano Stabellini
Cc: Julien Grall
---
v2: Added the function p2m_flush_table to the previous version.
v3: Removed struct vttbr.
Moved define INVALID_VTTBR to p2m.h.
Exported function prototypes of "p2m_flus
ed to "altp2m_check" and moved from p2m.c to altp2m.c for the x86
architecuture. This change was perfomed in order to move altp2m related
functions to one spot (which is altp2m.c). The reason for modifying the
function's name is due the association of the function with the
associated .c f
This commit introduces macros for switching and restoring the vttbr
considering the currently set irq flags. We define these macros, as the
following commits will use the associated functionality multiple times
throughout the file ./xen/arch/arm/p2m.c.
Signed-off-by: Sergej Proskurin
---
Cc
This commit exposes the "p2m_*lock" helpers, as they will be used within
the file ./xen/arch/arm/altp2m.c, as will be shown in the following
commits.
Signed-off-by: Sergej Proskurin
---
Cc: Stefano Stabellini
Cc: Julien Grall
---
xen/arch/arm/p2m.c| 12 ++--
xen/i
This commit adds the function "altp2m_lazy_copy" implementing the altp2m
paging mechanism. The function "altp2m_lazy_copy" lazily copies the
hostp2m's mapping into the currently active altp2m view on 2nd stage
translation faults on instruction or data access.
Signed
This commit adopts the x86 HVMOP_altp2m_get_domain_state implementation.
Signed-off-by: Sergej Proskurin
---
Cc: Stefano Stabellini
Cc: Julien Grall
---
v3: Removed the "altp2m_enabled" check in HVMOP_altp2m_get_domain_state
case as it has been moved in front of the switch st
domain.
Signed-off-by: Sergej Proskurin
---
Cc: Stefano Stabellini
Cc: Julien Grall
---
v2: Removed altp2m command-line option: Guard through HVM_PARAM_ALTP2M.
Removed not used altp2m helper stubs in altp2m.h.
v3: Cosmetic fixes.
Added domain lock in "do_altp2m_op" to avoid
Signed-off-by: Sergej Proskurin
---
Cc: Stefano Stabellini
Cc: Julien Grall
---
v2: Cosmetic fixes.
v3: Cosmetic fixes.
Renamed the function "altp2m_init_next" to
"altp2m_init_next_available".
Exchanged the check "altp2m_vttbr[idx] == INVALID_VTTBR
's p2m and different altp2m views. While doing so, we needed to
extend the function's prototype of "p2m_mem_access_check_and_get_page"
to hold an argument of type "struct vcpu*".
Signed-off-by: Sergej Proskurin
---
Cc: Stefano Stabellini
The current implementation differentiates between flushing and
destroying altp2m views. This commit adds the function altp2m_flush,
which allows to release all of the alternate p2m views.
Signed-off-by: Sergej Proskurin
---
Cc: Stefano Stabellini
Cc: Julien Grall
---
v2: Pages in p2m->pa
domains.
Signed-off-by: Sergej Proskurin
---
Cc: Stefano Stabellini
Cc: Julien Grall
---
xen/arch/arm/hvm.c | 65 ++
1 file changed, 56 insertions(+), 9 deletions(-)
diff --git a/xen/arch/arm/hvm.c b/xen/arch/arm/hvm.c
index 45d51c6..ce6a436
prototypes have
been extended to hold another argument (of type struct p2m_domain *).
This allows to specify the p2m/altp2m domain that should be processed by
the individual function -- instead of accessing the host's default p2m
domain.
Signed-off-by: Sergej Proskurin
---
Cc: Stefano Stabellin
Signed-off-by: Sergej Proskurin
Acked-by: Razvan Cojocaru
---
Cc: Razvan Cojocaru
Cc: Tamas K Lengyel
Cc: Ian Jackson
Cc: Wei Liu
---
tools/tests/xen-access/xen-access.c | 27 +--
1 file changed, 17 insertions(+), 10 deletions(-)
diff --git a/tools/tests/xen-access
rgej
[0] https://github.com/sergej-proskurin/xen (branch arm-altp2m-v3)
[1] https://summerofcode.withgoogle.com/projects/#4970052843470848
[2] git://xenbits.xen.org/people/julieng/xen-unstable.git (branch p2m-rfc)
[3] https://lists.xenproject.org/archives/html/xen-devel/2016-08/msg01870.html
Serg
currently
active altp2m view might not have the required gva mapping yet.
Also, the new implementation fills the request buffer to hold
altp2m-related information.
Signed-off-by: Sergej Proskurin
---
Cc: Stefano Stabellini
Cc: Julien Grall
---
v3: Extended the function "p2m_mem_access_ch
The function "p2m_lookup_attr" allows to lookup the mfn, memory type,
access rights, and page order corresponding to a domain's gfn.
Signed-off-by: Sergej Proskurin
---
Cc: Stefano Stabellini
Cc: Julien Grall
---
v3: Change function prototype of "p2m_lookup_attr" by
The HVMOP_altp2m_set_mem_access allows to set gfn permissions of
(currently one page at a time) of a specific altp2m view. In case the
view does not hold the requested gfn entry, it will be first copied from
the host's p2m table and then modified as requested.
Signed-off-by: Sergej Pros
Hi Jan,
On 08/17/2016 12:05 PM, Jan Beulich wrote:
On 17.08.16 at 00:17, wrote:
>> xen/arch/arm/altp2m.c| 32
>> xen/arch/x86/mm/altp2m.c | 6 ++
>> xen/arch/x86/mm/p2m.c| 6 --
>> xen/common/vm_event.c| 3 ++-
>> xen/
t p2m
domain.
Signed-off-by: Sergej Proskurin
---
Cc: Stefano Stabellini
Cc: Julien Grall
---
xen/arch/arm/p2m.c | 80 +-
1 file changed, 43 insertions(+), 37 deletions(-)
diff --git a/xen/arch/arm/p2m.c b/xen/arch/arm/p2m.c
index 019f10e..9c
one in the x86 implementation.
Signed-off-by: Sergej Proskurin
---
Cc: Stefano Stabellini
Cc: Julien Grall
---
xen/arch/arm/domain.c | 2 +-
xen/arch/arm/p2m.c| 53 +--
xen/include/asm-arm/p2m.h | 2 +-
3 files changed, 44 insertions(+
Signed-off-by: Sergej Proskurin
---
Cc: Razvan Cojocaru
Cc: Tamas K Lengyel
Cc: Ian Jackson
Cc: Wei Liu
---
tools/tests/xen-access/xen-access.c | 11 +--
1 file changed, 9 insertions(+), 2 deletions(-)
diff --git a/tools/tests/xen-access/xen-access.c
b/tools/tests/xen-access/xen
The HVMOP_altp2m_set_domain_state allows to activate altp2m on a
specific domain. This commit adopts the x86
HVMOP_altp2m_set_domain_state implementation. The function
p2m_flush_altp2m is currently implemented in form of a stub.
Signed-off-by: Sergej Proskurin
---
Cc: Stefano Stabellini
Cc
one in the x86 implementation.
Signed-off-by: Sergej Proskurin
---
Cc: Stefano Stabellini
Cc: Julien Grall
---
xen/arch/arm/domain.c | 2 +-
xen/arch/arm/p2m.c| 53 +--
xen/include/asm-arm/p2m.h | 2 +-
3 files changed, 44 insertions(+
his function.
Signed-off-by: Sergej Proskurin
---
Cc: Stefano Stabellini
Cc: Julien Grall
---
xen/arch/arm/guestcopy.c | 6 +++---
xen/arch/arm/p2m.c | 19 +--
xen/arch/arm/traps.c | 2 +-
xen/include/asm-arm/mm.h | 2 +-
4 files changed, 18 insertions(+), 11 delet
The HVMOP HVMOP_altp2m_set_mem_access allows to set gfn permissions of
(currently one page at a time) of a specific altp2m view. In case the
view does not hold the requested gfn entry, it will be first copied from
the hostp2m table and then modified as requested.
Signed-off-by: Sergej Proskurin
t p2m
domain.
Signed-off-by: Sergej Proskurin
---
Cc: Stefano Stabellini
Cc: Julien Grall
---
xen/arch/arm/p2m.c | 80 +-
1 file changed, 43 insertions(+), 37 deletions(-)
diff --git a/xen/arch/arm/p2m.c b/xen/arch/arm/p2m.c
index 019f10e..9c
Signed-off-by: Sergej Proskurin
---
Cc: Stefano Stabellini
Cc: Julien Grall
---
xen/arch/arm/p2m.c | 6 --
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/xen/arch/arm/p2m.c b/xen/arch/arm/p2m.c
index 96892a5..de97a12 100644
--- a/xen/arch/arm/p2m.c
+++ b/xen/arch/arm/p2m.c
point in time.
In addition, the implementation clears all altp2m entries during the
process of flushing. The same applies to hostp2m entries, when it is
destroyed. In this way, further domain and p2m allocations will not
unintentionally reuse old p2m mappings.
Signed-off-by: Sergej Proskurin
The HVMOP HVMOP_altp2m_set_mem_access allows to set gfn permissions of
(currently one page at a time) of a specific altp2m view. In case the
view does not hold the requested gfn entry, it will be first copied from
the hostp2m table and then modified as requested.
Signed-off-by: Sergej Proskurin
Signed-off-by: Sergej Proskurin
---
Cc: Stefano Stabellini
Cc: Julien Grall
---
xen/arch/arm/hvm.c| 2 +-
xen/arch/arm/p2m.c| 32
xen/include/asm-arm/p2m.h | 3 +++
3 files changed, 36 insertions(+), 1 deletion(-)
diff --git a/xen/arch/arm
Signed-off-by: Sergej Proskurin
---
Cc: Stefano Stabellini
Cc: Julien Grall
---
xen/arch/arm/hvm.c| 2 +-
xen/arch/arm/p2m.c| 32
xen/include/asm-arm/p2m.h | 3 +++
3 files changed, 36 insertions(+), 1 deletion(-)
diff --git a/xen/arch/arm
ommit, Xen is now able to activate altp2m support on ARM by
means of the command-line argument 'altp2m' (bool).
Signed-off-by: Sergej Proskurin
---
Cc: Stefano Stabellini
Cc: Julien Grall
---
xen/arch/arm/hvm.c| 22
xen/include/asm-arm
301 - 400 of 471 matches
Mail list logo