Page MenuHomeFreeBSD

D13681.id.diff
No OneTemporary

D13681.id.diff

Index: head/sys/vm/vm_swapout.c
===================================================================
--- head/sys/vm/vm_swapout.c
+++ head/sys/vm/vm_swapout.c
@@ -729,7 +729,6 @@
{
struct proc *p;
struct thread *td;
- struct vmspace *vm;
int minslptime, slptime;
bool didswap;
@@ -763,24 +762,6 @@
PROC_UNLOCK(p);
sx_sunlock(&allproc_lock);
- /*
- * Do not swapout a process that
- * is waiting for VM data
- * structures as there is a possible
- * deadlock. Test this first as
- * this may block.
- *
- * Lock the map until swapout
- * finishes, or a thread of this
- * process may attempt to alter
- * the map.
- */
- vm = vmspace_acquire_ref(p);
- if (vm == NULL)
- goto nextproc2;
- if (!vm_map_trylock(&vm->vm_map))
- goto nextproc1;
-
PROC_LOCK(p);
if (p->p_lock != 1 || (p->p_flag & (P_STOPPED_SINGLE |
P_TRACED | P_SYSTEM)) != 0)
@@ -867,17 +848,11 @@
if (swapout(p) == 0)
didswap = true;
PROC_UNLOCK(p);
- vm_map_unlock(&vm->vm_map);
- vmspace_free(vm);
goto retry;
}
}
nextproc:
PROC_UNLOCK(p);
- vm_map_unlock(&vm->vm_map);
-nextproc1:
- vmspace_free(vm);
-nextproc2:
sx_slock(&allproc_lock);
PRELE(p);
}

File Metadata

Mime Type
text/plain
Expires
Sat, Nov 22, 12:52 AM (18 h, 15 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
25847917
Default Alt Text
D13681.id.diff (1 KB)

Event Timeline