PowerMac g5 "4 core" (system total): unload, load, boot gets: "moea64_enter: bpvo pool exhausted, 327680, 327680, 31457280" very early in the boot

Mark Millard marklmi at yahoo.com
Wed Jan 30 01:14:12 UTC 2019


[This presumes getting past the Translation map KASSERT
that I reported earlier, for example by using a non-debug
kernel build. Also I've established a context with usefdt=1
implicitly enabled and I've seen the below with both the
old and modern VM_MAX_KERNEL_ADDRESS value in place.]

If at the loader prompt for the G4 "4 core" I:

unload
load /boot/kernel/kernel
boot

or:

unload
boot /boot/kernel/kernel

the following routine's panic happens and reports:

moea64_enter: bpvo pool exhausted, 327680, 327680, 31457280

The routine is:

static struct pvo_entry *
alloc_pvo_entry(int bootstrap)
{        
        struct pvo_entry *pvo;
        
        if (!moea64_initialized || bootstrap) {
                if (moea64_bpvo_pool_index >= moea64_bpvo_pool_size) {
                        panic("moea64_enter: bpvo pool exhausted, %d, %d, %zd",
                              moea64_bpvo_pool_index, moea64_bpvo_pool_size,
                              moea64_bpvo_pool_size * sizeof(struct pvo_entry));
                }
                pvo = &moea64_bpvo_pool[
                    atomic_fetchadd_int(&moea64_bpvo_pool_index, 1)];
                bzero(pvo, sizeof(*pvo));
                pvo->pvo_vaddr = PVO_BOOTSTRAP;
        } else {
                pvo = uma_zalloc(moea64_pvo_zone, M_NOWAIT);
                bzero(pvo, sizeof(*pvo));
        }

        return (pvo);
}

Such things make switching kernels from the loader prompt
problematical. That in turn makes gathering evidence for
other boot issues messier.

For reference (from a picture of the screen):

kdb_backtrace+0x68
vpanic+0x258
panic+0x3c
alloc_pvo_entry+0xe4
moea64_kenter_attr+0x44
moea64_late_bootstrap+0x3f4
moeas64_bootstrap_native+0x20c
pmap_bootstrap+0xc8
powerpc_init+0x440


===
Mark Millard
marklmi at yahoo.com
( dsl-only.net went
away in early 2018-Mar)



More information about the freebsd-ppc mailing list