From 421f324baaad9c67a11effd3303237139da7d3d0 Mon Sep 17 00:00:00 2001 From: Tomas Hruby Date: Wed, 15 Sep 2010 14:11:19 +0000 Subject: [PATCH] SMP - Make sure that VM does not change pt of a process while kernel copies --- kernel/arch/i386/memory.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/kernel/arch/i386/memory.c b/kernel/arch/i386/memory.c index e1307df69..3650e900d 100644 --- a/kernel/arch/i386/memory.c +++ b/kernel/arch/i386/memory.c @@ -159,6 +159,8 @@ PRIVATE int lin_lin_copy(const struct proc *srcproc, vir_bytes srclinaddr, if(dstproc) assert(!RTS_ISSET(dstproc, RTS_SLOT_FREE)); assert(!RTS_ISSET(get_cpulocal_var(ptproc), RTS_SLOT_FREE)); assert(get_cpulocal_var(ptproc)->p_seg.p_cr3_v); + if(srcproc) assert(!RTS_ISSET(srcproc, RTS_VMINHIBIT)); + if(dstproc) assert(!RTS_ISSET(dstproc, RTS_VMINHIBIT)); while(bytes > 0) { phys_bytes srcptr, dstptr; -- 2.44.0