Mailing List Archive

[PATCH] xen: arm: Call init_xen_time earlier
If we panic before calling init_xen_time then the "Rebooting in 5
seconds" delay ends up calling udelay which uses cntfrq before it has
been initialised resulting in a divide by zero.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
---
xen/arch/arm/setup.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c
index 2076724..7b0a0f6 100644
--- a/xen/arch/arm/setup.c
+++ b/xen/arch/arm/setup.c
@@ -219,6 +219,8 @@ void __init start_xen(unsigned long boot_phys_offset,
console_init_preirq();
#endif

+ init_xen_time();
+
gic_init();
make_cpus_ready(cpus, boot_phys_offset);

@@ -227,8 +229,6 @@ void __init start_xen(unsigned long boot_phys_offset,
set_current((struct vcpu *)0xfffff000); /* debug sanity */
idle_vcpu[0] = current;

- init_xen_time();
-
setup_mm(atag_paddr, fdt_size);

/* Setup Hyp vector base */
--
1.7.9.1


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel
Re: [PATCH] xen: arm: Call init_xen_time earlier [ In reply to ]
On Mon, 17 Dec 2012, Ian Campbell wrote:
> If we panic before calling init_xen_time then the "Rebooting in 5
> seconds" delay ends up calling udelay which uses cntfrq before it has
> been initialised resulting in a divide by zero.
>
> Signed-off-by: Ian Campbell <ian.campbell@citrix.com>


Acked-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>

> xen/arch/arm/setup.c | 4 ++--
> 1 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c
> index 2076724..7b0a0f6 100644
> --- a/xen/arch/arm/setup.c
> +++ b/xen/arch/arm/setup.c
> @@ -219,6 +219,8 @@ void __init start_xen(unsigned long boot_phys_offset,
> console_init_preirq();
> #endif
>
> + init_xen_time();
> +
> gic_init();
> make_cpus_ready(cpus, boot_phys_offset);
>
> @@ -227,8 +229,6 @@ void __init start_xen(unsigned long boot_phys_offset,
> set_current((struct vcpu *)0xfffff000); /* debug sanity */
> idle_vcpu[0] = current;
>
> - init_xen_time();
> -
> setup_mm(atag_paddr, fdt_size);
>
> /* Setup Hyp vector base */
> --
> 1.7.9.1
>
>
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@lists.xen.org
> http://lists.xen.org/xen-devel
>

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel
Re: [PATCH] xen: arm: Call init_xen_time earlier [ In reply to ]
On Tue, 2012-12-18 at 11:42 +0000, Stefano Stabellini wrote:
> On Mon, 17 Dec 2012, Ian Campbell wrote:
> > If we panic before calling init_xen_time then the "Rebooting in 5
> > seconds" delay ends up calling udelay which uses cntfrq before it has
> > been initialised resulting in a divide by zero.
> >
> > Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
>
>
> Acked-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>

Applied, thanks.


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel