forked from luck/tmp_suning_uos_patched
Merge branch 'bugfix' of git://git.kernel.org/pub/scm/linux/kernel/git/jeremy/xen into x86/urgent
This commit is contained in:
commit
cbcb340cb6
@ -7,6 +7,10 @@ ifdef CONFIG_FUNCTION_TRACER
|
|||||||
CFLAGS_REMOVE_common.o = -pg
|
CFLAGS_REMOVE_common.o = -pg
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
# Make sure load_percpu_segment has no stackprotector
|
||||||
|
nostackp := $(call cc-option, -fno-stack-protector)
|
||||||
|
CFLAGS_common.o := $(nostackp)
|
||||||
|
|
||||||
obj-y := intel_cacheinfo.o addon_cpuid_features.o
|
obj-y := intel_cacheinfo.o addon_cpuid_features.o
|
||||||
obj-y += proc.o capflags.o powerflags.o common.o
|
obj-y += proc.o capflags.o powerflags.o common.o
|
||||||
obj-y += vmware.o hypervisor.o
|
obj-y += vmware.o hypervisor.o
|
||||||
|
@ -5,6 +5,10 @@ CFLAGS_REMOVE_time.o = -pg
|
|||||||
CFLAGS_REMOVE_irq.o = -pg
|
CFLAGS_REMOVE_irq.o = -pg
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
# Make sure early boot has no stackprotector
|
||||||
|
nostackp := $(call cc-option, -fno-stack-protector)
|
||||||
|
CFLAGS_enlighten.o := $(nostackp)
|
||||||
|
|
||||||
obj-y := enlighten.o setup.o multicalls.o mmu.o irq.o \
|
obj-y := enlighten.o setup.o multicalls.o mmu.o irq.o \
|
||||||
time.o xen-asm.o xen-asm_$(BITS).o \
|
time.o xen-asm.o xen-asm_$(BITS).o \
|
||||||
grant-table.o suspend.o
|
grant-table.o suspend.o
|
||||||
|
@ -974,10 +974,6 @@ asmlinkage void __init xen_start_kernel(void)
|
|||||||
|
|
||||||
xen_domain_type = XEN_PV_DOMAIN;
|
xen_domain_type = XEN_PV_DOMAIN;
|
||||||
|
|
||||||
BUG_ON(memcmp(xen_start_info->magic, "xen-3", 5) != 0);
|
|
||||||
|
|
||||||
xen_setup_features();
|
|
||||||
|
|
||||||
/* Install Xen paravirt ops */
|
/* Install Xen paravirt ops */
|
||||||
pv_info = xen_info;
|
pv_info = xen_info;
|
||||||
pv_init_ops = xen_init_ops;
|
pv_init_ops = xen_init_ops;
|
||||||
@ -986,8 +982,15 @@ asmlinkage void __init xen_start_kernel(void)
|
|||||||
pv_apic_ops = xen_apic_ops;
|
pv_apic_ops = xen_apic_ops;
|
||||||
pv_mmu_ops = xen_mmu_ops;
|
pv_mmu_ops = xen_mmu_ops;
|
||||||
|
|
||||||
xen_init_irq_ops();
|
#ifdef CONFIG_X86_64
|
||||||
|
/*
|
||||||
|
* Setup percpu state. We only need to do this for 64-bit
|
||||||
|
* because 32-bit already has %fs set properly.
|
||||||
|
*/
|
||||||
|
load_percpu_segment(0);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
xen_init_irq_ops();
|
||||||
xen_init_cpuid_mask();
|
xen_init_cpuid_mask();
|
||||||
|
|
||||||
#ifdef CONFIG_X86_LOCAL_APIC
|
#ifdef CONFIG_X86_LOCAL_APIC
|
||||||
@ -997,6 +1000,8 @@ asmlinkage void __init xen_start_kernel(void)
|
|||||||
set_xen_basic_apic_ops();
|
set_xen_basic_apic_ops();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
xen_setup_features();
|
||||||
|
|
||||||
if (xen_feature(XENFEAT_mmu_pt_update_preserve_ad)) {
|
if (xen_feature(XENFEAT_mmu_pt_update_preserve_ad)) {
|
||||||
pv_mmu_ops.ptep_modify_prot_start = xen_ptep_modify_prot_start;
|
pv_mmu_ops.ptep_modify_prot_start = xen_ptep_modify_prot_start;
|
||||||
pv_mmu_ops.ptep_modify_prot_commit = xen_ptep_modify_prot_commit;
|
pv_mmu_ops.ptep_modify_prot_commit = xen_ptep_modify_prot_commit;
|
||||||
@ -1004,13 +1009,6 @@ asmlinkage void __init xen_start_kernel(void)
|
|||||||
|
|
||||||
machine_ops = xen_machine_ops;
|
machine_ops = xen_machine_ops;
|
||||||
|
|
||||||
#ifdef CONFIG_X86_64
|
|
||||||
/*
|
|
||||||
* Setup percpu state. We only need to do this for 64-bit
|
|
||||||
* because 32-bit already has %fs set properly.
|
|
||||||
*/
|
|
||||||
load_percpu_segment(0);
|
|
||||||
#endif
|
|
||||||
/*
|
/*
|
||||||
* The only reliable way to retain the initial address of the
|
* The only reliable way to retain the initial address of the
|
||||||
* percpu gdt_page is to remember it here, so we can go and
|
* percpu gdt_page is to remember it here, so we can go and
|
||||||
|
Loading…
Reference in New Issue
Block a user