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

Re: [Xen-devel] [PATCH 00/18] arm/altp2m: Introducing altp2m to ARM.




On 07/04/2016 02:52 PM, Andrew Cooper wrote:
> On 04/07/16 12:45, Sergej Proskurin wrote:
>> Hello together,
>>
>> Since this is my first contribution to the Xen development mailing list, I
>> would like to shortly introduce myself. My name is Sergej Proskurin. I am a 
>> PhD
>> Student at the Technical University of Munich. My research areas focus on
>> Virtual Machine Introspection, Hypervisor/OS Security, and Reverse 
>> Engineering.
>>
>> The following patch series can be found on Github[0] and is part of my
>> contribution to this year's Google Summer of Code (GSoC)[1]. My project is
>> managed by the organization The Honeynet Project. As part of GSoC, I am being
>> supervised by the Xen developer Tamas K. Lengyel <tamas@xxxxxxxxxxxxx>, 
>> George
>> D. Webster, and Steven Maresca.
>>
>> In this patch series, we provide an implementation of the altp2m subsystem 
>> for
>> ARM. Our implementation is based on the altp2m subsystem for x86, providing
>> additional --alternate-- views on the guest's physical memory by means of the
>> ARM 2nd stage translation mechanism. The patches introduce new HVMOPs and
>> extend the p2m subsystem. We extend libxl to support altp2m on ARM and modify
>> xen-access to test the suggested functionality.
>>
>> [0] https://github.com/sergej-proskurin/xen (Branch arm-altp2m-patch)
>> [1] https://summerofcode.withgoogle.com/projects/#4970052843470848
>>
>> Sergej Proskurin (18):
>>   arm/altp2m: Add cmd-line support for altp2m on ARM.
>>   arm/altp2m: Add first altp2m HVMOP stubs.
>>   arm/altp2m: Add HVMOP_altp2m_get_domain_state.
>>   arm/altp2m: Add altp2m init/teardown routines.
>>   arm/altp2m: Add HVMOP_altp2m_set_domain_state.
>>   arm/altp2m: Add a(p2m) table flushing routines.
>>   arm/altp2m: Add HVMOP_altp2m_create_p2m.
>>   arm/altp2m: Add HVMOP_altp2m_destroy_p2m.
>>   arm/altp2m: Add HVMOP_altp2m_switch_p2m.
>>   arm/altp2m: Renamed and extended p2m_alloc_table.
>>   arm/altp2m: Make flush_tlb_domain ready for altp2m.
>>   arm/altp2m: Cosmetic fixes - function prototypes.
>>   arm/altp2m: Make get_page_from_gva ready for altp2m.
>>   arm/altp2m: Add HVMOP_altp2m_set_mem_access.
>>   arm/altp2m: Add altp2m paging mechanism.
>>   arm/altp2m: Extended libxl to activate altp2m on ARM.
>>   arm/altp2m: Adjust debug information to altp2m.
>>   arm/altp2m: Extend xen-access for altp2m on ARM.
>>
>>  tools/libxl/libxl_create.c          |   1 +
>>  tools/libxl/libxl_dom.c             |  14 +
>>  tools/libxl/libxl_types.idl         |   1 +
>>  tools/libxl/xl_cmdimpl.c            |   5 +
>>  tools/tests/xen-access/xen-access.c |  11 +-
>>  xen/arch/arm/Makefile               |   1 +
>>  xen/arch/arm/altp2m.c               |  68 +++
>>  xen/arch/arm/domain.c               |   2 +-
>>  xen/arch/arm/guestcopy.c            |   6 +-
>>  xen/arch/arm/hvm.c                  | 145 ++++++
>>  xen/arch/arm/p2m.c                  | 930 
>> ++++++++++++++++++++++++++++++++----
>>  xen/arch/arm/traps.c                | 104 +++-
>>  xen/include/asm-arm/altp2m.h        |  12 +-
>>  xen/include/asm-arm/domain.h        |  18 +
>>  xen/include/asm-arm/hvm/hvm.h       |  59 +++
>>  xen/include/asm-arm/mm.h            |   2 +-
>>  xen/include/asm-arm/p2m.h           |  72 ++-
>>  17 files changed, 1330 insertions(+), 121 deletions(-)
>>  create mode 100644 xen/arch/arm/altp2m.c
>>  create mode 100644 xen/include/asm-arm/hvm/hvm.h
>>
> 
> I have taken a quick look over the series, and things seem to be in order.
> 
> However, I wonder whether it would be better to have do_altp2m_op()
> common between x86 and ARM, to avoid the risk of divergence in the API.
> 
> ~Andrew
> 

It makes definitely sense to combine or rather pull out arch-independent
parts into a common place. We are still discussing what exactly needs to
be moved out. Thus, we are open for suggestions, thank you.

Cheers,
Sergej

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel

 


Rackspace

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