aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkaf24@scramble.cl.cam.ac.uk <kaf24@scramble.cl.cam.ac.uk>2003-10-14 23:42:37 +0000
committerkaf24@scramble.cl.cam.ac.uk <kaf24@scramble.cl.cam.ac.uk>2003-10-14 23:42:37 +0000
commit928a6621db20dd341186f1110ff5a0a33ef1bbf0 (patch)
tree8bbc0f02cac951cd1ddc431b20df10295e484a9e
parent66a8262e506a3436f5c54cf53289a4d7f87dc7db (diff)
downloadxen-928a6621db20dd341186f1110ff5a0a33ef1bbf0.tar.gz
xen-928a6621db20dd341186f1110ff5a0a33ef1bbf0.tar.bz2
xen-928a6621db20dd341186f1110ff5a0a33ef1bbf0.zip
bitkeeper revision 1.518 (3f8c89edP5chDaj1mr0mM5bVQRlRkg)
memory.c: Fix bug in new LDT shadow mapping code.
-rw-r--r--xen/common/memory.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/xen/common/memory.c b/xen/common/memory.c
index c9fd39bd31..f6fe2f4f38 100644
--- a/xen/common/memory.c
+++ b/xen/common/memory.c
@@ -215,7 +215,7 @@ void __init init_frametable(unsigned long nr_pages)
static void __invalidate_shadow_ldt(struct task_struct *p)
{
- int i, cpu = smp_processor_id();
+ int i, cpu = p->processor;
unsigned long pfn;
struct pfn_info *page;
@@ -289,7 +289,7 @@ int map_ldt_shadow_page(unsigned int off)
/* Success! */
get_page_type(page);
get_page_tot(page);
- p->mm.perdomain_pt[l1_table_offset(off)+16] = mk_l1_pgentry(l1e|_PAGE_RW);
+ p->mm.perdomain_pt[off+16] = mk_l1_pgentry((l1e&PAGE_MASK)|_PAGE_RW);
p->mm.shadow_ldt_mapcnt++;
ret = 0;