summaryrefslogtreecommitdiffstats
path: root/sys/vm/vm_map.c
diff options
context:
space:
mode:
authordfr <dfr@FreeBSD.org>1998-08-06 08:33:19 +0000
committerdfr <dfr@FreeBSD.org>1998-08-06 08:33:19 +0000
commit0864bef6791e1818c64fa41c0eb3e69ffe0066d9 (patch)
tree7d9411f07b566d86fd0730872a748080ff8a6d8b /sys/vm/vm_map.c
parent203de4af5d0b4c199f18b2451ea9b044b2c8a6b2 (diff)
downloadFreeBSD-src-0864bef6791e1818c64fa41c0eb3e69ffe0066d9.zip
FreeBSD-src-0864bef6791e1818c64fa41c0eb3e69ffe0066d9.tar.gz
Protect all modifications to paging_in_progress with splvm(). The i386
managed to avoid corruption of this variable by luck (the compiler used a memory read-modify-write instruction which wasn't interruptable) but other architectures cannot. With this change, I am now able to 'make buildworld' on the alpha (sfx: the crowd goes wild...)
Diffstat (limited to 'sys/vm/vm_map.c')
-rw-r--r--sys/vm/vm_map.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/sys/vm/vm_map.c b/sys/vm/vm_map.c
index faf144f..398a9eb 100644
--- a/sys/vm/vm_map.c
+++ b/sys/vm/vm_map.c
@@ -61,7 +61,7 @@
* any improvements or extensions that they make and grant Carnegie the
* rights to redistribute these changes.
*
- * $Id: vm_map.c,v 1.131 1998/07/11 11:30:43 bde Exp $
+ * $Id: vm_map.c,v 1.132 1998/07/14 12:14:58 bde Exp $
*/
/*
@@ -2001,7 +2001,7 @@ vm_map_split(entry)
}
if (orig_object->type == OBJT_SWAP) {
- orig_object->paging_in_progress++;
+ vm_object_pip_add(orig_object, 1);
/*
* copy orig_object pages into new_object
* and destroy unneeded pages in
@@ -2778,7 +2778,7 @@ vm_freeze_copyopts(object, froma, toa)
continue;
}
- robject->paging_in_progress++;
+ vm_object_pip_add(robject, 1);
for (idx = 0; idx < robject->size; idx++) {
OpenPOWER on IntegriCloud