xen: arm: enable aborts on all physical processors.
authorIan Campbell <ian.campbell@citrix.com>
Thu, 25 Apr 2013 14:45:50 +0000 (15:45 +0100)
committerIan Campbell <ian.campbell@citrix.com>
Fri, 19 Jul 2013 13:53:46 +0000 (14:53 +0100)
I'm not sure how this ended up in construct dom0 where it only affects the
boot cpu and doesn't logically fit.

Enable aborts at the same time as we enable interrupts.

I'm not sure what the behaviour of an "abort worthy" operation while aborts
are disable is, but it must surely be worse than calling do_unexpected_trap,
which is what happens from now on.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Tim Deegan <tim@xen.org>
xen/arch/arm/domain_build.c
xen/arch/arm/setup.c
xen/arch/arm/smpboot.c

index 0423b5a654e8d2b17e09b5ea83067a55871020a3..155b4363b51620db4f74dc088843e3a53de10df0 100644 (file)
@@ -633,8 +633,6 @@ int construct_dom0(struct domain *d)
         }
     }
 
-    local_abort_enable();
-
     return 0;
 }
 
index c22972f0deaeaecb4045f2de97052641fd63dfcd..2f9fdc805e700e7c3eb472fb24ffdcbb0333d3be 100644 (file)
@@ -488,6 +488,7 @@ void __init start_xen(unsigned long boot_phys_offset,
     arch_init_memory();
 
     local_irq_enable();
+    local_abort_enable();
 
     smp_prepare_cpus(cpus);
 
index c7421fc793d7f5b2d373bb912d71311333d36b31..58951782135983c3cc3c82be1f2cc01e9e230d8a 100644 (file)
@@ -175,6 +175,7 @@ void __cpuinit start_secondary(unsigned long boot_phys_offset,
     wmb();
 
     local_irq_enable();
+    local_abort_enable();
 
     printk(XENLOG_DEBUG "CPU %u booted.\n", smp_processor_id());