|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH 2/2] x86/mm: Use mfn_t for make_cr3()
On Wed, Aug 30, 2017 at 1:19 PM, Andrew Cooper
<andrew.cooper3@xxxxxxxxxx> wrote:
> No functional change.
>
> Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
Acked-by: George Dunlap <george.dunlap@xxxxxxxxxx>
> ---
> CC: Jan Beulich <JBeulich@xxxxxxxx>
> CC: Wei Liu <wei.liu2@xxxxxxxxxx>
> CC: Tim Deegan <tim@xxxxxxx>
> CC: George Dunlap <george.dunlap@xxxxxxxxxxxxx>
> ---
> xen/arch/x86/mm.c | 10 +++++-----
> xen/arch/x86/mm/hap/hap.c | 2 +-
> xen/arch/x86/mm/shadow/common.c | 8 ++++----
> xen/arch/x86/mm/shadow/multi.c | 4 ++--
> xen/include/asm-x86/mm.h | 2 +-
> 5 files changed, 13 insertions(+), 13 deletions(-)
>
> diff --git a/xen/arch/x86/mm.c b/xen/arch/x86/mm.c
> index dc07b4f..f0c81e7 100644
> --- a/xen/arch/x86/mm.c
> +++ b/xen/arch/x86/mm.c
> @@ -498,9 +498,9 @@ void free_shared_domheap_page(struct page_info *page)
> free_domheap_page(page);
> }
>
> -void make_cr3(struct vcpu *v, unsigned long mfn)
> +void make_cr3(struct vcpu *v, mfn_t mfn)
> {
> - v->arch.cr3 = mfn << PAGE_SHIFT;
> + v->arch.cr3 = mfn_x(mfn) << PAGE_SHIFT;
> }
>
> void write_ptbase(struct vcpu *v)
> @@ -518,7 +518,7 @@ void write_ptbase(struct vcpu *v)
> */
> void update_cr3(struct vcpu *v)
> {
> - unsigned long cr3_mfn;
> + mfn_t cr3_mfn;
>
> if ( paging_mode_enabled(v->domain) )
> {
> @@ -527,9 +527,9 @@ void update_cr3(struct vcpu *v)
> }
>
> if ( !(v->arch.flags & TF_kernel_mode) )
> - cr3_mfn = pagetable_get_pfn(v->arch.guest_table_user);
> + cr3_mfn = pagetable_get_mfn(v->arch.guest_table_user);
> else
> - cr3_mfn = pagetable_get_pfn(v->arch.guest_table);
> + cr3_mfn = pagetable_get_mfn(v->arch.guest_table);
>
> make_cr3(v, cr3_mfn);
> }
> diff --git a/xen/arch/x86/mm/hap/hap.c b/xen/arch/x86/mm/hap/hap.c
> index 15e4877..6946fde 100644
> --- a/xen/arch/x86/mm/hap/hap.c
> +++ b/xen/arch/x86/mm/hap/hap.c
> @@ -719,7 +719,7 @@ static void hap_update_paging_modes(struct vcpu *v)
> {
> mfn_t mmfn = hap_make_monitor_table(v);
> v->arch.monitor_table = pagetable_from_mfn(mmfn);
> - make_cr3(v, mfn_x(mmfn));
> + make_cr3(v, mmfn);
> hvm_update_host_cr3(v);
> }
>
> diff --git a/xen/arch/x86/mm/shadow/common.c b/xen/arch/x86/mm/shadow/common.c
> index e8ee6db..3926ed6 100644
> --- a/xen/arch/x86/mm/shadow/common.c
> +++ b/xen/arch/x86/mm/shadow/common.c
> @@ -2961,7 +2961,7 @@ static void sh_update_paging_modes(struct vcpu *v)
> {
> mfn_t mmfn = v->arch.paging.mode->shadow.make_monitor_table(v);
> v->arch.monitor_table = pagetable_from_mfn(mmfn);
> - make_cr3(v, mfn_x(mmfn));
> + make_cr3(v, mmfn);
> hvm_update_host_cr3(v);
> }
>
> @@ -3004,7 +3004,7 @@ static void sh_update_paging_modes(struct vcpu *v)
> /* Don't be running on the old monitor table when we
> * pull it down! Switch CR3, and warn the HVM code that
> * its host cr3 has changed. */
> - make_cr3(v, mfn_x(new_mfn));
> + make_cr3(v, new_mfn);
> if ( v == current )
> write_ptbase(v);
> hvm_update_host_cr3(v);
> @@ -3380,9 +3380,9 @@ static int shadow_one_bit_disable(struct domain *d, u32
> mode)
> if ( v->arch.paging.mode )
> v->arch.paging.mode->shadow.detach_old_tables(v);
> if ( !(v->arch.flags & TF_kernel_mode) )
> - make_cr3(v, pagetable_get_pfn(v->arch.guest_table_user));
> + make_cr3(v, pagetable_get_mfn(v->arch.guest_table_user));
> else
> - make_cr3(v, pagetable_get_pfn(v->arch.guest_table));
> + make_cr3(v, pagetable_get_mfn(v->arch.guest_table));
>
> #if (SHADOW_OPTIMIZATIONS & SHOPT_OUT_OF_SYNC)
> {
> diff --git a/xen/arch/x86/mm/shadow/multi.c b/xen/arch/x86/mm/shadow/multi.c
> index c5c0af8..f7efe66 100644
> --- a/xen/arch/x86/mm/shadow/multi.c
> +++ b/xen/arch/x86/mm/shadow/multi.c
> @@ -4273,7 +4273,7 @@ sh_update_cr3(struct vcpu *v, int do_locking)
> ///
> if ( shadow_mode_external(d) )
> {
> - make_cr3(v, pagetable_get_pfn(v->arch.monitor_table));
> + make_cr3(v, pagetable_get_mfn(v->arch.monitor_table));
> }
> else // not shadow_mode_external...
> {
> @@ -4287,7 +4287,7 @@ sh_update_cr3(struct vcpu *v, int do_locking)
> v->arch.cr3 = virt_to_maddr(&v->arch.paging.shadow.l3table);
> #else
> /* 4-on-4: Just use the shadow top-level directly */
> - make_cr3(v, pagetable_get_pfn(v->arch.shadow_table[0]));
> + make_cr3(v, pagetable_get_mfn(v->arch.shadow_table[0]));
> #endif
> }
>
> diff --git a/xen/include/asm-x86/mm.h b/xen/include/asm-x86/mm.h
> index 4c03a33..dce3f16 100644
> --- a/xen/include/asm-x86/mm.h
> +++ b/xen/include/asm-x86/mm.h
> @@ -540,7 +540,7 @@ void audit_domains(void);
> #endif
>
> int new_guest_cr3(mfn_t mfn);
> -void make_cr3(struct vcpu *v, unsigned long mfn);
> +void make_cr3(struct vcpu *v, mfn_t mfn);
> void update_cr3(struct vcpu *v);
> int vcpu_destroy_pagetables(struct vcpu *);
> void *do_page_walk(struct vcpu *v, unsigned long addr);
> --
> 2.1.4
>
>
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@xxxxxxxxxxxxx
> https://lists.xen.org/xen-devel
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
https://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |