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

Re: [Xen-devel] [PATCH 4/4] x86/shadow: make some logâdirty handling functions static



On 28/01/15 08:12, Jan Beulich wrote:
> Noticed while introducing the stub replacement for disabling shadow
> paging support at build time.
>
> Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx>

Reviewed-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>

>
> --- a/xen/arch/x86/mm/shadow/common.c
> +++ b/xen/arch/x86/mm/shadow/common.c
> @@ -41,6 +41,10 @@
>  
>  DEFINE_PER_CPU(uint32_t,trace_shadow_path_flags);
>  
> +static int sh_enable_log_dirty(struct domain *, bool_t log_global);
> +static int sh_disable_log_dirty(struct domain *);
> +static void sh_clean_dirty_bitmap(struct domain *);
> +
>  /* Set up the shadow-specific parts of a domain struct at start of day.
>   * Called for every domain from arch_domain_create() */
>  int shadow_domain_init(struct domain *d, unsigned int domcr_flags)
> @@ -49,8 +53,8 @@ int shadow_domain_init(struct domain *d,
>      INIT_PAGE_LIST_HEAD(&d->arch.paging.shadow.pinned_shadows);
>  
>      /* Use shadow pagetables for log-dirty support */
> -    paging_log_dirty_init(d, shadow_enable_log_dirty, 
> -                          shadow_disable_log_dirty, 
> shadow_clean_dirty_bitmap);
> +    paging_log_dirty_init(d, sh_enable_log_dirty,
> +                          sh_disable_log_dirty, sh_clean_dirty_bitmap);
>  
>  #if (SHADOW_OPTIMIZATIONS & SHOPT_OUT_OF_SYNC)
>      d->arch.paging.shadow.oos_active = 0;
> @@ -3422,7 +3426,7 @@ shadow_write_p2m_entry(struct domain *d,
>  /* Shadow specific code which is called in paging_log_dirty_enable().
>   * Return 0 if no problem found.
>   */
> -int shadow_enable_log_dirty(struct domain *d, bool_t log_global)
> +static int sh_enable_log_dirty(struct domain *d, bool_t log_global)
>  {
>      int ret;
>  
> @@ -3450,7 +3454,7 @@ int shadow_enable_log_dirty(struct domai
>  }
>  
>  /* shadow specfic code which is called in paging_log_dirty_disable() */
> -int shadow_disable_log_dirty(struct domain *d)
> +static int sh_disable_log_dirty(struct domain *d)
>  {
>      int ret;
>  
> @@ -3464,7 +3468,7 @@ int shadow_disable_log_dirty(struct doma
>  /* This function is called when we CLEAN log dirty bitmap. See 
>   * paging_log_dirty_op() for details. 
>   */
> -void shadow_clean_dirty_bitmap(struct domain *d)
> +static void sh_clean_dirty_bitmap(struct domain *d)
>  {
>      paging_lock(d);
>      /* Need to revoke write access to the domain's pages again.
> --- a/xen/include/asm-x86/shadow.h
> +++ b/xen/include/asm-x86/shadow.h
> @@ -77,15 +77,6 @@ void shadow_teardown(struct domain *d);
>  /* Call once all of the references to the domain have gone away */
>  void shadow_final_teardown(struct domain *d);
>  
> -/* shadow code to call when log dirty is enabled */
> -int shadow_enable_log_dirty(struct domain *d, bool_t log_global);
> -
> -/* shadow code to call when log dirty is disabled */
> -int shadow_disable_log_dirty(struct domain *d);
> -
> -/* shadow code to call when bitmap is being cleaned */
> -void shadow_clean_dirty_bitmap(struct domain *d);
> -
>  /* Update all the things that are derived from the guest's CR0/CR3/CR4.
>   * Called to initialize paging structures if the paging mode
>   * has changed, and when bringing up a VCPU for the first time. */
>
>
>


_______________________________________________
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®.