@@ -260,7 +260,7 @@ static int mca_init_global(uint32_t flags, struct mcinfo_global *mig)
&mig->mc_coreid, &mig->mc_core_threadid,
&mig->mc_apicid, NULL, NULL, NULL);
- if ( curr != INVALID_VCPU )
+ if ( curr )
{
mig->mc_domid = curr->domain->domain_id;
mig->mc_vcpuid = curr->vcpu_id;
@@ -29,7 +29,7 @@ static inline struct vcpu *mapcache_current_vcpu(void)
* When current isn't properly set up yet, this is equivalent to
* running in an idle vCPU (callers must check for NULL).
*/
- if ( v == INVALID_VCPU )
+ if ( !v )
return NULL;
/*
@@ -707,9 +707,6 @@ void __init noreturn __start_xen(unsigned long mbi_p)
/* Critical region without IDT or TSS. Any fault is deadly! */
- set_processor_id(0);
- set_current(INVALID_VCPU); /* debug sanity. */
- idle_vcpu[0] = current;
init_shadow_spec_ctrl_state();
percpu_init_areas();
@@ -392,7 +392,7 @@ void tboot_shutdown(uint32_t shutdown_type)
* During early boot, we can be called by panic before idle_vcpu[0] is
* setup, but in that case we don't need to change page tables.
*/
- if ( idle_vcpu[0] != INVALID_VCPU )
+ if ( idle_vcpu[0] )
write_ptbase(idle_vcpu[0]);
((void(*)(void))(unsigned long)g_tboot_shared->shutdown_entry)();
@@ -4,9 +4,6 @@
#include <xen/multiboot.h>
#include <asm/numa.h>
-/* vCPU pointer used prior to there being a valid one around */
-#define INVALID_VCPU ((struct vcpu *)0xccccccccccccc000UL)
-
extern const char __2M_text_start[], __2M_text_end[];
extern const char __2M_rodata_start[], __2M_rodata_end[];
extern char __2M_init_start[], __2M_init_end[];
Now that NULL will fault at boot, there is no need for a special constant to signify "current not set up yet". Since c/s fae249d23413 "x86/boot: Rationalise stack handling during early boot", the BSP cpu_info block is now consistently zero, so drop the adjacent re-zeroing. Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com> --- CC: Jan Beulich <JBeulich@suse.com> CC: Wei Liu <wl@xen.org> CC: Roger Pau Monné <roger.pau@citrix.com> v2: * Drop re-zeroign of the cpu_info block --- xen/arch/x86/cpu/mcheck/mce.c | 2 +- xen/arch/x86/domain_page.c | 2 +- xen/arch/x86/setup.c | 3 --- xen/arch/x86/tboot.c | 2 +- xen/include/asm-x86/setup.h | 3 --- 5 files changed, 3 insertions(+), 9 deletions(-)