diff options
| author | David Greenman <dg@FreeBSD.org> | 1998-10-27 13:22:51 +0000 |
|---|---|---|
| committer | David Greenman <dg@FreeBSD.org> | 1998-10-27 13:22:51 +0000 |
| commit | e4b7635de2e34057151fe68f04d0e4e35d88c93e (patch) | |
| tree | 361e859028bb807498eb6cb305fb820e8aa92ef6 | |
| parent | b5ee16407fcb5ca6f04e1202ace3a930cd8b6177 (diff) | |
Notes
| -rw-r--r-- | sys/vm/vm_object.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/sys/vm/vm_object.c b/sys/vm/vm_object.c index 0a8d78e95bd5..1bb7a40483f6 100644 --- a/sys/vm/vm_object.c +++ b/sys/vm/vm_object.c @@ -61,7 +61,7 @@ * any improvements or extensions that they make and grant Carnegie the * rights to redistribute these changes. * - * $Id: vm_object.c,v 1.132 1998/10/23 05:43:13 dg Exp $ + * $Id: vm_object.c,v 1.133 1998/10/25 17:44:58 phk Exp $ */ /* @@ -404,6 +404,7 @@ vm_object_terminate(object) register vm_object_t object; { register vm_page_t p; + int s; /* * Make sure no one uses us. @@ -449,6 +450,7 @@ vm_object_terminate(object) * removes them from paging queues. Don't free wired pages, just * remove them from the object. */ + s = splvm(); while ((p = TAILQ_FIRST(&object->memq)) != NULL) { #if !defined(MAX_PERF) if (p->busy || (p->flags & PG_BUSY)) @@ -465,6 +467,7 @@ vm_object_terminate(object) vm_page_remove(p); } } + splx(s); /* * Let the pager know object is dead. |
