ia64/xen-unstable

changeset 3379:275b77086005

bitkeeper revision 1.1159.213.2 (41dc5bb8NoFeyC8xMcZdstILsQ-Tqg)

patch from Leendert van Doorn <leendert@watson.ibm.com>

Hyperthreading on VMX is broken in the xeno-unstable.bk tree. The diff
below fixes this.
It turns out that the mtrr code clears too many bits, some of them cause
Xen to crash. Being a bit more precise fixes the problem.
author iap10@labyrinth.cl.cam.ac.uk
date Wed Jan 05 21:27:20 2005 +0000 (2005-01-05)
parents 6aadc1c26a93
children e17a946c7a91
files xen/arch/x86/mtrr/generic.c
line diff
     1.1 --- a/xen/arch/x86/mtrr/generic.c	Tue Jan 04 16:39:35 2005 +0000
     1.2 +++ b/xen/arch/x86/mtrr/generic.c	Wed Jan 05 21:27:20 2005 +0000
     1.3 @@ -250,7 +250,7 @@ static void prepare_set(void)
     1.4  	/*  Save value of CR4 and clear Page Global Enable (bit 7)  */
     1.5  	if ( cpu_has_pge ) {
     1.6  		cr4 = read_cr4();
     1.7 -		write_cr4(cr4 & (unsigned char) ~(1 << 7));
     1.8 +		write_cr4(cr4 & ~X86_CR4_PGE);
     1.9  	}
    1.10  
    1.11  	/* Flush all TLBs via a mov %cr3, %reg; mov %reg, %cr3 */