Re: [PATCH v7 07/11] pvqspinlock, x86: Allow unfair queue spinlock in a XEN guest

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

 



On Wed, Mar 19, 2014 at 04:14:05PM -0400, Waiman Long wrote:
> This patch adds a XEN init function to activate the unfair queue
> spinlock in a XEN guest when the PARAVIRT_UNFAIR_LOCKS kernel config
> option is selected.
> 
> Signed-off-by: Waiman Long <Waiman.Long@xxxxxx>
> ---
>  arch/x86/xen/setup.c |   19 +++++++++++++++++++
>  1 files changed, 19 insertions(+), 0 deletions(-)
> 
> diff --git a/arch/x86/xen/setup.c b/arch/x86/xen/setup.c
> index 0982233..66bb6f5 100644
> --- a/arch/x86/xen/setup.c
> +++ b/arch/x86/xen/setup.c
> @@ -625,3 +625,22 @@ void __init xen_arch_setup(void)
>  	numa_off = 1;
>  #endif
>  }
> +
> +#ifdef CONFIG_PARAVIRT_UNFAIR_LOCKS
> +/*
> + * Enable unfair lock if running in a Xen guest
> + */
> +static __init int xen_unfair_locks_init_jump(void)
> +{
> +	/*
> +	 * Disable unfair lock if not running in a PV domain
> +	 */
> +	if (!xen_pv_domain())
> +		return 0;

I would just make this 'xen_domain'. Not sure why you need
to have it only for PV while the PVHVM guests can also use it?

Would it also make sense to use the same printk statement
that the KVM has?
> +
> +	static_key_slow_inc(&paravirt_unfairlocks_enabled);
> +
> +	return 0;
> +}
> +early_initcall(xen_unfair_locks_init_jump);
> +#endif
> -- 
> 1.7.1
> 
_______________________________________________
Virtualization mailing list
Virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx
https://lists.linuxfoundation.org/mailman/listinfo/virtualization




[Index of Archives]     [KVM Development]     [Libvirt Development]     [Libvirt Users]     [CentOS Virtualization]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux