Index: sys/vm/uma_core.c =================================================================== --- sys/vm/uma_core.c (revision 221870) +++ sys/vm/uma_core.c (working copy) @@ -935,6 +935,7 @@ keg = zone_first_keg(zone); pages = howmany(bytes, PAGE_SIZE); check_pages = pages - 1; + printf("Checkpoint 1, check_pages=%d, pages=%d\n", check_pages, pages); KASSERT(pages > 0, ("startup_alloc can't reserve 0 pages\n")); /* @@ -946,6 +947,7 @@ tmps = LIST_FIRST(&uma_boot_pages); while (tmps != NULL && check_pages-- > 0) tmps = LIST_NEXT(tmps, us_link); + printf("Checkpoint 2, tmps=%p, check_pages=%d\n", tmps, check_pages); if (tmps != NULL) { /* * It's ok to lose tmps references. The last one will @@ -957,10 +959,12 @@ LIST_REMOVE(tmps, us_link); } mtx_unlock(&uma_boot_pages_mtx); + printf("Checkpoint 3, tmps=%p, pages=%d\n", tmps, pages); *pflag = tmps->us_flags; return (tmps->us_data); } mtx_unlock(&uma_boot_pages_mtx); + printf("Checkpoint 4, tmps=%p, booted=%d\n", tmps, booted); if (booted == 0) panic("UMA: Increase vm.boot_pages"); /*