I am running with WITNESS and WITNESS_SKIPSPIN. Today I couldn't log into my current box because it was out of processes. I went to ddb and found a bunch of pairs of cron processes. One would be blocked in fork and the second in execve. The relevant stack trace for the execve ones is:
_vm_map_lock + 0x5b kmem_alloc_wait + 0x38 kern_execve + 0x1de Which correspond to: (kgdb) l *kern_execve + 0x1de 0xc0211fae is in kern_execve (../../../kern/kern_exec.c:238). 233 234 /* 235 * Allocate temporary demand zeroed space for argument and 236 * environment strings 237 */ 238 imgp->stringbase = (char *)kmem_alloc_wait(exec_map, ARG_MAX + 239 PAGE_SIZE); 240 if (imgp->stringbase == NULL) { 241 error = ENOMEM; 242 mtx_lock(&Giant); (kgdb) l *kmem_alloc_wait+0x38 0xc02fd2b8 is in kmem_alloc_wait (vm_map.h:190). 185 } 186 187 static __inline vm_offset_t 188 vm_map_min(vm_map_t map) 189 { 190 return (map->min_offset); 191 } 192 193 static __inline pmap_t 194 vm_map_pmap(vm_map_t map) (kgdb) l *_vm_map_lock + 0x5b 0xc02fdb0b is in _vm_map_lock (../../../vm/vm_map.c:367). 362 int error; 363 364 if (map->system_map) 365 GIANT_REQUIRED; 366 error = lockmgr(&map->lock, LK_EXCLUSIVE, NULL, curthread); 367 KASSERT(error == 0, ("%s: failed to get lock", __func__)); 368 map->timestamp++; 369 } 370 371 void I thought I saw a patch for this recently but couldn't find it in the archives. Thanks, Nate To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message