Duplicate mbuf free panic in hme(4)

John Baldwin jhb at FreeBSD.org
Tue Nov 30 12:15:07 PST 2004


On Tuesday 30 November 2004 10:35 am, John Baldwin wrote:
> I got the following panic on my ultra60 while the box was idle over the
> holidays:
>
> Nov 26 00:20:25 amd[293]: reload of map /etc/amd.map is not needed (in
> sync) Nov 26 01:24:26 amd[293]: reload of map /etc/amd.map is not needed
> (in sync) Nov 26 02:28:26 amd[293]: reload of map /etc/amd.map is not
> needed (in sync) Nov 26 03:32:26 amd[293]: reload of map /etc/amd.map is
> not needed (in sync) Slab at 0xfffff80085467ed8, freei 2 = 0.
> panic: Duplicate free of item 0xfffff80085466200 from zone
> 0xfffff80027ffd5c0 (Mbuf)
>
> cpuid = 0
> KDB: enter: panic
> [thread 100039]
> Stopped at      kdb_enter+0x38: ta              %xcc, 1
> db> tr
> panic() at panic+0x19c
> uma_dbg_free() at uma_dbg_free+0x138
> uma_zfree_arg() at uma_zfree_arg+0x1a4
> m_freem() at m_freem+0x4c
> hme_intr() at hme_intr+0x2d0
> psycho_intr_stub() at psycho_intr_stub+0x8
> ithread_loop() at ithread_loop+0x218
> fork_exit() at fork_exit+0x9c
> fork_trampoline() at fork_trampoline+0x8
> db>
>
> Perhaps this can also explain the memory used after free panics that myself
> and others see on our sparcs under load?

Slightly more info:

(gdb) l *hme_intr+0x2d0
0xc00bb4d0 is in hme_intr (../../../dev/hme/if_hme.c:1206).
1201                    bus_dmamap_sync(sc->sc_tdmatag, htx->htx_dmamap,
1202                        BUS_DMASYNC_POSTWRITE);
1203                    bus_dmamap_unload(sc->sc_tdmatag, htx->htx_dmamap);
1204
1205                    ifp->if_opackets++;
1206                    m_freem(htx->htx_m);
1207                    htx->htx_m = NULL;
1208                    STAILQ_REMOVE_HEAD(&sc->sc_rb.rb_txbusyq, htx_q);
1209                    STAILQ_INSERT_TAIL(&sc->sc_rb.rb_txfreeq, htx, htx_q);
1210                    htx = STAILQ_FIRST(&sc->sc_rb.rb_txbusyq);

> ident /sys/dev/hme/if_hme.c
/sys/dev/hme/if_hme.c:
     $FreeBSD: src/sys/dev/hme/if_hme.c,v 1.32 2004/11/22 06:46:30 yongari 
Exp$

-- 
John Baldwin <jhb at FreeBSD.org>  <><  http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve"  =  http://www.FreeBSD.org


More information about the freebsd-sparc64 mailing list