Fatal LOR: PV ENTRY (UMA zone) @
/home2/src/sys/vm/uma_core.c:2033
Willem Jan Withagen
wjw at withagen.nl
Wed Jul 28 02:58:30 PDT 2004
From: "Alan Cox" <alc at cs.rice.edu>
Subject: Re: Fatal LOR: PV ENTRY (UMA zone) @ /home2/src/sys/vm/uma_core.c:2033
> The lock-order reversal that precedes this panic makes little sense:
>
> lock order reversal
> 1st 0xffffff007fed7c10 PV ENTRY (UMA zone) @
/home2/src/sys/vm/uma_core.c:2033
> 2nd 0xffffffff8063dce0 UMA pcpu (UMA pcpu) @
/home2/src/sys/vm/uma_core.c:2015
>
> This corresponds to:
>
> void
> uma_zfree_arg(uma_zone_t zone, void *item, void *udata)
> {
> ...
> zfree_restart:
> cpu = PCPU_GET(cpuid);
> CPU_LOCK(cpu); *** 2nd ***
> cache = &zone->uz_cpu[cpu];
>
> zfree_start:
> bucket = cache->uc_freebucket;
>
> if (bucket) {
> /*
> * Do we have room in our bucket? It is OK for this uz count
> * check to be slightly out of sync.
> */
>
> if (bucket->ub_cnt < bucket->ub_entries) {
> KASSERT(bucket->ub_bucket[bucket->ub_cnt] == NULL,
> ("uma_zfree: Freeing to non free bucket index."));
> bucket->ub_bucket[bucket->ub_cnt] = item;
> bucket->ub_cnt++;
> #ifdef INVARIANTS
> ZONE_LOCK(zone); *** 1st ***
> if (keg->uk_flags & UMA_ZONE_MALLOC)
> uma_dbg_free(zone, udata, item);
> else
> uma_dbg_free(zone, NULL, item);
> ZONE_UNLOCK(zone);
> #endif
> CPU_UNLOCK(cpu);
> return;
As per Alan suggestion of "faulty/bad designed" hardware, I've also ordered a
Tyan Tiger board. But the mailorder company messed the order, and now al of a
sudden they are sold out. :( So it won't be for another week that I'll get the
board. Right before I go sailing for a week.
So only after that I'll be running on new hardware....
Note that with this mornings CURRENT it does seem to survive my standard
abuse...
PREEMPTION is included with this kernel
--WjW
More information about the freebsd-current
mailing list