panic: object has cached pages on recent HEAD
Don Lewis
truckman at FreeBSD.org
Mon Apr 6 23:13:09 UTC 2015
On 6 Apr, To: current at freebsd.org wrote:
> I just got this panic on my port builder machine running a recent
> version of HEAD (last updated in the last few days):
>
> panic: object has cached pages on recent HEAD
>
> As you can see, I was pushing it really hard:
>
> last pid: 76867; load averages: 62.92, 41.93, 41.40 up 7+10:24:04 13:45:01
> 448 processes: 97 running, 344 sleeping, 7 stopped
> CPU: 79.1% user, 0.0% nice, 20.9% system, 0.0% interrupt, 0.0% idle
> Mem: 5887M Active, 163M Inact, 6085M Wired, 17M Cache, 832K Buf, 3658M Free
> ARC: 1482M Total, 163M MFU, 663M MRU, 7080K Anon, 70M Header, 579M Other
> Swap: 40G Total, 9167M Used, 31G Free, 22% Inuse, 1152K In
>
> PID USERNAME THR PRI NICE SIZE RES STATE C TIME WCPU COMMAND
> 73630 root 1 77 0 195M 181M CPU5 5 0:06 37.28% cc1plus
> 75387 root 1 78 0 209M 193M RUN 2 0:06 36.60% cc1plus
> 75615 root 1 74 0 150M 133M RUN 7 0:04 36.20% cc1plus
> 74151 root 1 78 0 306M 290M RUN 0 0:12 31.77% cc1plus
> 72986 root 1 78 0 282M 264M RUN 5 0:19 30.24% cc1plus
> 72985 root 1 77 0 292M 272M RUN 1 0:18 28.00% cc1plus
> 75912 root 1 75 0 106M 97604K RUN 3 0:03 27.73% cc1plus
> 74501 root 1 80 0 293M 280M RUN 7 0:11 27.14% cc1plus
> 73442 root 1 77 0 329M 299M RUN 2 0:13 26.54% cc1plus
> 75715 root 1 75 0 96996K 81424K RUN 3 0:02 22.51% cc1plus
> 74645 root 1 78 0 252M 236M RUN 6 0:09 21.73% cc1plus
> 75630 root 1 77 0 208M 189M RUN 4 0:08 19.27% cc1plus
> 74324 root 1 78 0 322M 308M RUN 4 0:11 19.17% cc1plus
> 75494 root 1 74 0 138M 126M RUN 4 0:04 19.07% cc1plus
> 74848 root 1 73 0 98180K 85192K RUN 2 0:02 16.12% cc1plus
> 76292 root 1 73 0 63108K 46904K RUN 0 0:01 15.92% cc1plus
>
> A screenshot with a backtrace is here:
> <https://people.freebsd.org/~truckman/panic_object_has_cached_pages.jpg>
>
> Is there anything I should check in DDB before I reboot? I can get the
> svn revision after I do that.
>
> I've never crashed this machine before, so I don't know if crashdumps
> work.
I was able to call doadump() from ddb, but when I rebooted, savecore was
not able to find the dump. I dumped to swap, which is mirrored ...
FreeBSD zipper.catspoiler.org 11.0-CURRENT FreeBSD 11.0-CURRENT #13
r280327M: Sun Mar 29 22:26:50 PDT 2015
I am running with this custom patch so that pre-compiled headers work
with gcc:
Index: sys/vm/vm_mmap.c
===================================================================
--- sys/vm/vm_mmap.c (revision 280837)
+++ sys/vm/vm_mmap.c (working copy)
@@ -325,6 +325,8 @@
* There should really be a pmap call to determine a reasonable
* location.
*/
+ if (addr != 0 && (flags & MAP_ANON) == 0)
+ flags |= MAP_RESERVED0100;
PROC_LOCK(td->td_proc);
if (addr == 0 ||
(addr >= round_page((vm_offset_t)vms->vm_taddr) &&
@@ -1665,6 +1667,8 @@
else if ((flags & MAP_ALIGNMENT_MASK) != 0)
findspace = VMFS_ALIGNED_SPACE(flags >>
MAP_ALIGNMENT_SHIFT);
+ else if ((flags & MAP_RESERVED0100) != 0)
+ findspace = VMFS_ANY_SPACE;
else
findspace = VMFS_OPTIMAL_SPACE;
rv = vm_map_find(map, object, foff, addr, size,
More information about the freebsd-current
mailing list