Re: [Xen-devel] [PATCH] xen/arm: disable cpuidle when linux is running as dom0
On 17 July 2013 14:28, Stefano Stabellini wrote: > On Mon, 15 Jul 2013, Konrad Rzeszutek Wilk wrote: >> On Mon, Jul 15, 2013 at 03:21:41PM +0100, Julien Grall wrote: >> > When linux is running as dom0, Xen doesn't show the physical cpu but a >> > virtual CPU. >> > On some ARM SOC (for instance the exynos 5250), linux registers callbacks >> > for cpuidle. When these callbacks are called, they will modify >> > directly the physical cpu not the virtual one. >> It can impact the whole board >> > instead of dom0. > > Certainly this is something that should be fixed at the hypervisor level > too. However I agree that Linux should try to avoid doing that when > running on Xen. > > > >> Should you also call disable_cpufreq() ? > > Sounds like a good idea. > Julien, could you add that to this patch? I have checked with both the Arndale and Versatile Express without any issue. I will resend this patch with disable_cpufreq(). -- Julien Grall -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [Xen-devel] [PATCH] xen/arm: disable cpuidle when linux is running as dom0
On Mon, 15 Jul 2013, Konrad Rzeszutek Wilk wrote: > On Mon, Jul 15, 2013 at 03:21:41PM +0100, Julien Grall wrote: > > When linux is running as dom0, Xen doesn't show the physical cpu but a > > virtual CPU. > > On some ARM SOC (for instance the exynos 5250), linux registers callbacks > > for cpuidle. When these callbacks are called, they will modify > > directly the physical cpu not the virtual one. > It can impact the whole board > > instead of dom0. Certainly this is something that should be fixed at the hypervisor level too. However I agree that Linux should try to avoid doing that when running on Xen. > Should you also call disable_cpufreq() ? Sounds like a good idea. Julien, could you add that to this patch? > > > > Signed-off-by: Julien Grall > > --- > > arch/arm/xen/enlighten.c |7 +++ > > 1 file changed, 7 insertions(+) > > > > diff --git a/arch/arm/xen/enlighten.c b/arch/arm/xen/enlighten.c > > index 49839d8..a98999f 100644 > > --- a/arch/arm/xen/enlighten.c > > +++ b/arch/arm/xen/enlighten.c > > @@ -24,6 +24,8 @@ > > #include > > #include > > #include > > +#include > > +#include > > > > #include > > > > @@ -292,6 +294,11 @@ static int __init xen_pm_init(void) > > { > > pm_power_off = xen_power_off; > > arm_pm_restart = xen_restart; > > + /* > > +* Making sure board specific code will not set up ops for > > +* cpu idle. > > +*/ > > + disable_cpuidle(); > > > > return 0; > > } > > -- > > 1.7.10.4 > > > > > > ___ > > Xen-devel mailing list > > xen-de...@lists.xen.org > > http://lists.xen.org/xen-devel > -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [Xen-devel] [PATCH] xen/arm: disable cpuidle when linux is running as dom0
On 07/15/2013 04:25 PM, Konrad Rzeszutek Wilk wrote: > On Mon, Jul 15, 2013 at 03:21:41PM +0100, Julien Grall wrote: >> When linux is running as dom0, Xen doesn't show the physical cpu but a >> virtual CPU. >> On some ARM SOC (for instance the exynos 5250), linux registers callbacks >> for cpuidle. When these callbacks are called, they will modify >> directly the physical cpu not the virtual one. It can impact the whole board >> instead of dom0. > > Should you also call disable_cpufreq() ? I had some issue on the versatile express when cpufreq was disabled. I will give another try and see the exact error. -- Julien -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [Xen-devel] [PATCH] xen/arm: disable cpuidle when linux is running as dom0
On Mon, Jul 15, 2013 at 03:21:41PM +0100, Julien Grall wrote: > When linux is running as dom0, Xen doesn't show the physical cpu but a > virtual CPU. > On some ARM SOC (for instance the exynos 5250), linux registers callbacks > for cpuidle. When these callbacks are called, they will modify > directly the physical cpu not the virtual one. It can impact the whole board > instead of dom0. Should you also call disable_cpufreq() ? > > Signed-off-by: Julien Grall > --- > arch/arm/xen/enlighten.c |7 +++ > 1 file changed, 7 insertions(+) > > diff --git a/arch/arm/xen/enlighten.c b/arch/arm/xen/enlighten.c > index 49839d8..a98999f 100644 > --- a/arch/arm/xen/enlighten.c > +++ b/arch/arm/xen/enlighten.c > @@ -24,6 +24,8 @@ > #include > #include > #include > +#include > +#include > > #include > > @@ -292,6 +294,11 @@ static int __init xen_pm_init(void) > { > pm_power_off = xen_power_off; > arm_pm_restart = xen_restart; > + /* > + * Making sure board specific code will not set up ops for > + * cpu idle. > + */ > + disable_cpuidle(); > > return 0; > } > -- > 1.7.10.4 > > > ___ > Xen-devel mailing list > xen-de...@lists.xen.org > http://lists.xen.org/xen-devel -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/