xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
From: Sergej Proskurin <proskurin@sec.in.tum.de>
To: Julien Grall <julien.grall@linaro.org>, xen-devel@lists.xenproject.org
Cc: Julien Grall <julien.grall@arm.com>,
	Stefano Stabellini <sstabellini@kernel.org>
Subject: Re: [PATCH v4 01/39] arm/p2m: Introduce p2m_(switch|restore)_vttbr_and_(g|s)et_flags
Date: Wed, 10 Jan 2018 13:45:46 +0100	[thread overview]
Message-ID: <8af6a7f5-bc18-3beb-5242-bf6dfd362bef@sec.in.tum.de> (raw)
In-Reply-To: <815b6fec-0dbb-477c-8475-195003dc25a5@linaro.org>

Hi Julien,

please excuse me for the long delay.

On 10/09/2017 06:25 PM, Julien Grall wrote:
> Hi Sergej,
>
> On 30/08/17 19:32, Sergej Proskurin wrote:
>> 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 different files.
>>
>> Signed-off-by: Sergej Proskurin <proskurin@sec.in.tum.de>
>> ---
>> Cc: Stefano Stabellini <sstabellini@kernel.org>
>> Cc: Julien Grall <julien.grall@arm.com>
>> ---
>> v4: Save the content of VTTBR_EL2 inside of the introduced macro
>>      "p2m_switch_vttbr_and_get_flags".
>>
>>      Move the introduced macros into ./xen/include/asm-arm/p2m.h, as
>> they will
>>      be used by different files in the future commits.
>
> I don't like the idea of moving such macros in p2m.h because it expose
> the underlying implementation of P2M.
>
> A better solution would be introduce a helper to translate from a
> guest VA to guest PA in p2m.c. This helper will switch to the host P2M
> if necessary.

I agree, thank you. This would eliminate the unnecessary macro
invocations in mem_access.c. I will include such wrapper in p2m.c in the
next version of the altp2m patch series.

Do you think it would make sense to submit the upper macros for saving
and restoring the VTTBR and flags as a standalone patch in form of a
cosmetic fix? This would simplify the function p2m_force_tlb_flush_sync
in p2m.c.

Thanks,
~Sergej


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

  reply	other threads:[~2018-01-10 12:46 UTC|newest]

Thread overview: 61+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-08-30 18:32 [PATCH v4 00/39] arm/altp2m: Introducing altp2m to ARM Sergej Proskurin
2017-08-30 18:32 ` [PATCH v4 01/39] arm/p2m: Introduce p2m_(switch|restore)_vttbr_and_(g|s)et_flags Sergej Proskurin
2017-10-09 16:25   ` Julien Grall
2018-01-10 12:45     ` Sergej Proskurin [this message]
2017-08-30 18:32 ` [PATCH v4 02/39] arm/p2m: Add first altp2m HVMOP stubs Sergej Proskurin
2017-10-09 16:43   ` Julien Grall
2018-01-10 17:16     ` Sergej Proskurin
2018-01-10 17:20       ` Julien Grall
2017-08-30 18:32 ` [PATCH v4 03/39] arm/p2m: Add hvm_allow_(set|get)_param Sergej Proskurin
2017-08-30 18:32 ` [PATCH v4 04/39] arm/p2m: Add HVMOP_altp2m_get_domain_state Sergej Proskurin
2017-08-30 18:32 ` [PATCH v4 05/39] arm/p2m: Introduce p2m_is_(hostp2m|altp2m) Sergej Proskurin
2017-08-30 18:32 ` [PATCH v4 06/39] arm/p2m: Cosmetic fix - substitute _gfn(ULONG_MAX) for INVALID_GFN Sergej Proskurin
2017-08-30 18:32 ` [PATCH v4 07/39] arm/p2m: Move hostp2m init/teardown to individual functions Sergej Proskurin
2017-10-09 17:15   ` Julien Grall
2018-01-10 17:06     ` Sergej Proskurin
2017-08-30 18:32 ` [PATCH v4 08/39] arm/p2m: Cosmetic fix - function prototype of p2m_alloc_table Sergej Proskurin
2017-08-30 18:32 ` [PATCH v4 09/39] arm/p2m: Rename parameter in p2m_alloc_vmid Sergej Proskurin
2017-08-30 18:32 ` [PATCH v4 10/39] arm/p2m: Change func prototype and impl of p2m_(alloc|free)_vmid Sergej Proskurin
2017-08-30 18:32 ` [PATCH v4 11/39] altp2m: Move (MAX|INVALID)_ALTP2M to xen/p2m-common.h Sergej Proskurin
2017-08-31  8:04   ` Jan Beulich
2017-08-31  9:49     ` Sergej Proskurin
2017-08-31 10:19       ` Jan Beulich
2017-08-31 14:03         ` Sergej Proskurin
2017-08-30 18:32 ` [PATCH v4 12/39] arm/p2m: Add altp2m init/teardown routines Sergej Proskurin
2017-08-30 18:32 ` [PATCH v4 13/39] arm/p2m: Add altp2m table flushing routine Sergej Proskurin
2017-08-30 18:32 ` [PATCH v4 14/39] arm/p2m: Add HVMOP_altp2m_set_domain_state Sergej Proskurin
2017-08-30 18:32 ` [PATCH v4 15/39] arm/p2m: Add HVMOP_altp2m_create_p2m Sergej Proskurin
2017-08-30 18:32 ` [PATCH v4 16/39] arm/p2m: Add HVMOP_altp2m_destroy_p2m Sergej Proskurin
2017-08-30 18:32 ` [PATCH v4 17/39] arm/p2m: Add HVMOP_altp2m_switch_p2m Sergej Proskurin
2017-08-30 18:32 ` [PATCH v4 18/39] arm/p2m: Add p2m_get_active_p2m macro Sergej Proskurin
2017-08-30 18:32 ` [PATCH v4 19/39] arm/p2m: Make p2m_restore_state ready for altp2m Sergej Proskurin
2017-08-30 18:32 ` [PATCH v4 20/39] arm/p2m: Make get_page_from_gva " Sergej Proskurin
2017-08-30 18:32 ` [PATCH v4 21/39] arm/p2m: Cosmetic fix - __p2m_get_mem_access Sergej Proskurin
2017-08-30 18:32 ` [PATCH v4 22/39] arm/p2m: Make p2m_mem_access_check ready for altp2m Sergej Proskurin
2017-08-30 18:32 ` [PATCH v4 23/39] arm/p2m: Cosmetic fix - function prototypes Sergej Proskurin
2017-08-30 18:32 ` [PATCH v4 24/39] arm/p2m: Make p2m_put_l3_page ready for altp2m Sergej Proskurin
2017-08-30 18:32 ` [PATCH v4 25/39] arm/p2m: Modify reference count only if hostp2m active Sergej Proskurin
2017-08-30 18:32 ` [PATCH v4 26/39] arm/p2m: Add HVMOP_altp2m_set_mem_access Sergej Proskurin
2017-08-30 18:32 ` [PATCH v4 27/39] arm/p2m: Add altp2m_propagate_change Sergej Proskurin
2017-08-30 18:32 ` [PATCH v4 28/39] altp2m: Rename p2m_altp2m_check to altp2m_check Sergej Proskurin
2017-08-30 18:32 ` [PATCH v4 29/39] x86/altp2m: Move altp2m_check to altp2m.c Sergej Proskurin
2017-08-30 18:42   ` Razvan Cojocaru
2017-08-30 19:02     ` Sergej Proskurin
2017-08-30 18:32 ` [PATCH v4 30/39] arm/altp2m: Move altp2m_check to altp2m.h Sergej Proskurin
2017-08-30 18:32 ` [PATCH v4 31/39] arm/altp2m: Introduce altp2m_switch_vcpu_altp2m_by_id Sergej Proskurin
2017-08-30 18:32 ` [PATCH v4 32/39] arm/altp2m: Make altp2m_vcpu_idx ready for altp2m Sergej Proskurin
2017-08-30 18:32 ` [PATCH v4 33/39] arm/p2m: Add altp2m paging mechanism Sergej Proskurin
2017-08-30 18:32 ` [PATCH v4 34/39] arm/p2m: Add HVMOP_altp2m_change_gfn Sergej Proskurin
2017-08-30 18:32 ` [PATCH v4 35/39] arm/p2m: Adjust debug information to altp2m Sergej Proskurin
2017-08-30 18:32 ` [PATCH v4 36/39] altp2m: Document external-only use on ARM Sergej Proskurin
2017-09-01 15:32   ` Wei Liu
2017-08-30 18:32 ` [PATCH v4 37/39] altp2m: Allow activating altp2m on ARM domains Sergej Proskurin
2017-09-01 15:35   ` Wei Liu
2017-08-30 18:32 ` [PATCH v4 38/39] arm/xen-access: Extend xen-access for altp2m on ARM Sergej Proskurin
2017-08-30 18:32 ` [PATCH v4 39/39] arm/xen-access: Add test of xc_altp2m_change_gfn Sergej Proskurin
2017-08-30 18:52   ` Razvan Cojocaru
2017-08-30 19:07     ` Sergej Proskurin
2017-10-07 10:18 ` [PATCH v4 00/39] arm/altp2m: Introducing altp2m to ARM Sergej Proskurin
2017-10-07 10:29   ` Julien Grall
2017-10-07 10:54     ` Sergej Proskurin
2017-10-09 17:21       ` Julien Grall

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=8af6a7f5-bc18-3beb-5242-bf6dfd362bef@sec.in.tum.de \
    --to=proskurin@sec.in.tum.de \
    --cc=julien.grall@arm.com \
    --cc=julien.grall@linaro.org \
    --cc=sstabellini@kernel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).