search for: clear_in_cr4

Displaying 10 results from an estimated 10 matches for "clear_in_cr4".

2006 Sep 29
1
[PATCH] hvm: clear vmxe if vmxoff
...ch/x86/hvm/vmx/vmx.c +++ work/xen/arch/x86/hvm/vmx/vmx.c 2006-09-29 14:49:55.000000000 +0900 @@ -485,8 +485,10 @@ static void vmx_ctxt_switch_to(struct vc static void stop_vmx(void) { - if (read_cr4() & X86_CR4_VMXE) + if (read_cr4() & X86_CR4_VMXE) { __vmxoff(); + clear_in_cr4(X86_CR4_VMXE); + } } void vmx_migrate_timers(struct vcpu *v) @@ -806,12 +808,14 @@ int start_vmx(void) if ( (vmcs = vmx_alloc_host_vmcs()) == NULL ) { + clear_in_cr4(X86_CR4_VMXE); printk("Failed to allocate host VMCS\n"); return 0; }...
2007 Apr 18
0
[RFC/PATCH PV_OPS X86_64 03/17] paravirt_ops - system routines
...signed long mmu_cr4_features; - -static inline void set_in_cr4 (unsigned long mask) -{ - mmu_cr4_features |= mask; - __asm__("movq %%cr4,%%rax\n\t" - "orq %0,%%rax\n\t" - "movq %%rax,%%cr4\n" - : : "irg" (mask) - :"ax"); -} - -static inline void clear_in_cr4 (unsigned long mask) -{ - mmu_cr4_features &= ~mask; - __asm__("movq %%cr4,%%rax\n\t" - "andq %0,%%rax\n\t" - "movq %%rax,%%cr4\n" - : : "irg" (~mask) - :"ax"); -} - - -/* * User space process size. 47bits minus one guard page. */ #defi...
2007 Apr 18
0
[RFC/PATCH PV_OPS X86_64 03/17] paravirt_ops - system routines
...signed long mmu_cr4_features; - -static inline void set_in_cr4 (unsigned long mask) -{ - mmu_cr4_features |= mask; - __asm__("movq %%cr4,%%rax\n\t" - "orq %0,%%rax\n\t" - "movq %%rax,%%cr4\n" - : : "irg" (mask) - :"ax"); -} - -static inline void clear_in_cr4 (unsigned long mask) -{ - mmu_cr4_features &= ~mask; - __asm__("movq %%cr4,%%rax\n\t" - "andq %0,%%rax\n\t" - "movq %%rax,%%cr4\n" - : : "irg" (~mask) - :"ax"); -} - - -/* * User space process size. 47bits minus one guard page. */ #defi...
2004 Apr 23
3
zaptel on Fedora (Core 1) RedHat Linux-2.4
...essor.h:206: error: (Each undeclared identifier is reported only once /usr/src/linux-2.4/include/asm/processor.h:206: error: for each function it appears in.) /usr/src/linux-2.4/include/asm/processor.h:206: error: invalid lvalue in assignment /usr/src/linux-2.4/include/asm/processor.h: In function `clear_in_cr4': /usr/src/linux-2.4/include/asm/processor.h:216: error: `dad5638d' undeclared (first use in this function) /usr/src/linux-2.4/include/asm/processor.h:216: error: invalid lvalue in assignment /usr/src/linux-2.4/include/asm/processor.h:255:12: invalid suffix "a" on integer constant...
2007 Apr 18
3
[PATCH 1/4] x86 paravirt_ops: create no_paravirt.h for native ops
..."=a" (*eax), - "=b" (*ebx), - "=c" (*ecx), - "=d" (*edx) - : "0" (*eax), "2" (*ecx)); -} - /* * Generic CPUID function * clear %ecx since some cpus (Cyrix MII) do not set or clear %ecx @@ -281,13 +270,6 @@ static inline void clear_in_cr4 (unsigne outb((reg), 0x22); \ outb((data), 0x23); \ } while (0) - -/* Stop speculative execution */ -static inline void sync_core(void) -{ - int tmp; - asm volatile("cpuid" : "=a" (tmp) : "0" (1) : "ebx","ecx","edx","memory"...
2007 Apr 18
3
[PATCH 1/4] x86 paravirt_ops: create no_paravirt.h for native ops
..."=a" (*eax), - "=b" (*ebx), - "=c" (*ecx), - "=d" (*edx) - : "0" (*eax), "2" (*ecx)); -} - /* * Generic CPUID function * clear %ecx since some cpus (Cyrix MII) do not set or clear %ecx @@ -281,13 +270,6 @@ static inline void clear_in_cr4 (unsigne outb((reg), 0x22); \ outb((data), 0x23); \ } while (0) - -/* Stop speculative execution */ -static inline void sync_core(void) -{ - int tmp; - asm volatile("cpuid" : "=a" (tmp) : "0" (1) : "ebx","ecx","edx","memory"...
2007 Aug 15
13
[PATCH 0/25][V3] pvops_64 last round (hopefully)
This is hopefully the last iteration of the pvops64 patch. >From the last version, we have only one change, which is include/asm-x86_64/processor.h: There were still one survivor in raw asm. Also, git screwed me up for some reason, and the 25th patch was missing the new files, paravirt.{c,h}. (although I do remember having git-add'ed it, but who knows...) Andrew, could you please push it
2007 Aug 15
13
[PATCH 0/25][V3] pvops_64 last round (hopefully)
This is hopefully the last iteration of the pvops64 patch. >From the last version, we have only one change, which is include/asm-x86_64/processor.h: There were still one survivor in raw asm. Also, git screwed me up for some reason, and the 25th patch was missing the new files, paravirt.{c,h}. (although I do remember having git-add'ed it, but who knows...) Andrew, could you please push it
2007 Apr 18
2
[PATCH 1/3] Paravirtualization: Kernel Ring Cleanups
Hi all, I've been looking at finding common ground between the VMI, Xen and other paravirtualization approaches, and after some discussion, we're getting somewhere. These first two patches are the fundamentals, stolen mainly from the VMI patches: removing assumptions about the kernel running in ring 0, and macro-izing all the obvious para-virtualize-needing insns. The third patch is
2007 Apr 18
2
[PATCH 1/3] Paravirtualization: Kernel Ring Cleanups
Hi all, I've been looking at finding common ground between the VMI, Xen and other paravirtualization approaches, and after some discussion, we're getting somewhere. These first two patches are the fundamentals, stolen mainly from the VMI patches: removing assumptions about the kernel running in ring 0, and macro-izing all the obvious para-virtualize-needing insns. The third patch is