diff options
author | kaf24@scramble.cl.cam.ac.uk <kaf24@scramble.cl.cam.ac.uk> | 2003-10-14 23:42:37 +0000 |
---|---|---|
committer | kaf24@scramble.cl.cam.ac.uk <kaf24@scramble.cl.cam.ac.uk> | 2003-10-14 23:42:37 +0000 |
commit | 928a6621db20dd341186f1110ff5a0a33ef1bbf0 (patch) | |
tree | 8bbc0f02cac951cd1ddc431b20df10295e484a9e | |
parent | 66a8262e506a3436f5c54cf53289a4d7f87dc7db (diff) | |
download | xen-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.c | 4 |
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; |