sparc64 kernel dump debug

Maxim Konovalov maxim at macomnet.ru
Wed Oct 13 04:42:54 PDT 2004


On Wed, 13 Oct 2004, 13:26+0400, Andrew Belashov wrote:

> Maxim Konovalov wrote:
> > > Maxim Konovalov wrote:
> > > | Are there any ways to debug a kernel dump on sparc64?  On our SMP
> > > | netra1440:
> > >
> > > I use gdb53 or gdb6 from ports.
> > >
> > > Try my package as temp workaround:
> > >
> > > <http://www.orel.ru/~bel/packages/gdb-6_20040914.tbz>
> > >
> > > MD5 (gdb-6_20040914.tbz) = bfc1b21a9abe92f6550dfa8acd9769c7
> > > SIZE = 801882
> >
> >
> > Yes, it works, thank you!  Any ideas what's happened:
> >
> > panic: trap: fast data access mmu miss
> > cpuid = 0
> > boot() called on cpu#0
> > Uptime: 11d1h56m16s
> > Dumping 2048 MB (1 chunks)
> >  chunk at 0: 2147483648 bytes |\^H/\^H
> > ---
> > #0  doadump () at /usr/src/sys/kern/kern_shutdown.c:233
> > 233             savectx(&dumppcb);
> > doadump () at /usr/src/sys/kern/kern_shutdown.c:233
> > 233             savectx(&dumppcb);
> > (kgdb) bt f
> > #0  doadump () at /usr/src/sys/kern/kern_shutdown.c:233
> > No locals.
> > #1  0x00000000c01193c0 in boot (howto=260)
> > at /usr/src/sys/kern/kern_shutdown.c:385
> >        first_buf_printf = 1
> > #2  0x00000000c0119ccc in panic (fmt=0xc02d1138 "trap: %s")
> > at /usr/src/sys/kern/kern_shutdown.c:541
> > _tid = (struct thread *) 0xfffff80039daea00
> > td = (struct thread *) 0xfffff80039daea00
> > bootopt = 260
> > newpanic = 1
> > buf = "trap: fast data access mmu miss", '\0' <repeats 224
> > times>
> > #3  0x00000000c022e8c4 in trap (tf=0xff9e51c0)
> > at /usr/src/sys/sparc64/sparc64/trap.c:370
> > td = (struct thread *) 0xfffff80039daea00
> > p = (struct proc *) 0xc033f398
> > sticks = 3223512960
> > error = -1070788296
> > sig = -6401600
> > #4  0x00000000c0038fe0 in tl1_trap ()
> > No symbol table info available.
> > #5  0x00000000c0038fe0 in tl1_trap ()
> >
> >
> > ?
> >
>
> Hmm... Stack corrupted?
>
> Please show tf[0], td[0], p[0] from frame #3.

(kgdb) p tf[0]
$2 = {tf_global = {0, 0, 0, 0, 0, 3224533928, 4288567680, 3224630168},
  tf_out = {0, 0, 0, 0, 0, 6, 4288563905, 3222336224},
  tf_fprs = 18446735279716060000, tf_fsr = 0, tf_gsr = 0, tf_level = 0,
  tf_pil = 14, tf_sfar = 0, tf_sfsr = 8, tf_tar = 0, tf_tnpc = 3222336148,
  tf_tpc = 3222336144, tf_tstate = 597000459783, tf_type = 99, tf_y = 0,
  tf_wstate = 18446735278587177472, tf_pad = {1, 0}}

(kgdb) p td[0]
$4 = {td_proc = 0xfffff80030e6da70, td_ksegrp = 0xfffff80061715b80,
  td_plist = {tqe_next = 0x0, tqe_prev = 0xfffff80030e6da90}, td_kglist = {
    tqe_next = 0x0, tqe_prev = 0xfffff80061715b98}, td_slpq = {
    tqe_next = 0xfffff800151b1180, tqe_prev = 0xfffff800151b0530}, td_lockq = {
    tqe_next = 0x0, tqe_prev = 0xffc12fd0}, td_runq = {tqe_next = 0x0,
    tqe_prev = 0x0}, td_selq = {tqh_first = 0x0,
    tqh_last = 0xfffff80039daea60}, td_sleepqueue = 0xfffff80000987000,
  td_turnstile = 0xfffff8000b70b000, td_tid = 100172, td_flags = 16842754,
  td_inhibitors = 0, td_pflags = 0, td_dupfd = 0, td_wchan = 0x0,
  td_wmesg = 0x0, td_lastcpu = 1 '\001', td_oncpu = 0 '\0', td_locks = 0,
  td_blocked = 0x0, td_ithd = 0x0, td_lockname = 0x0, td_contested = {
    lh_first = 0x0}, td_sleeplocks = 0x0, td_intr_nesting_level = 0,
  td_pinned = 0, td_mailbox = 0x0, td_ucred = 0xfffff80010ca4300,
  td_standin = 0x0, td_upcall = 0x0, td_sticks = 0, td_uuticks = 0,
  td_usticks = 0, td_intrval = 0, td_oldsigmask = {__bits = {0, 0, 0, 0}},
  td_sigmask = {__bits = {0, 0, 0, 0}}, td_siglist = {__bits = {0, 0, 0, 0}},
  td_waitset = 0x0, td_umtx = {tqe_next = 0x0, tqe_prev = 0x0},

(kgdb) p p[0]
$5 = {p_list = {le_next = 0xfffff80039daea00, le_prev = 0xfffff8007f504c80},
  p_ksegrps = {tqh_first = 0x0, tqh_last = 0x0}, p_threads = {
    tqh_first = 0xff9e5980, tqh_last = 0xe9bc0}, p_suspended = {
    tqh_first = 0x1cad672999acab79, tqh_last = 0x5b4cef900000000},
  p_ucred = 0x100000002, p_fd = 0x0, p_fdtol = 0x0, p_stats = 0x0,
  p_limit = 0x0, p_upages_obj = 0x0, p_sigacts = 0x0, p_flag = 0,
  p_sflag = -1070337040, p_state = PRS_NEW, p_pid = 0, p_hash = {
    le_next = 0x0, le_prev = 0x0}, p_pglist = {le_next = 0xc033f410,
    le_prev = 0x0}, p_pptr = 0x0, p_sibling = {le_next = 0x0,
    le_prev = 0xc033f430}, p_children = {lh_first = 0x0}, p_mtx = {
    mtx_object = {lo_class = 0x0, lo_name = 0x0, lo_type = 0xc033f450 "",
      lo_flags = 0, lo_list = {tqe_next = 0x0, tqe_prev = 0x0},
      lo_witness = 0xc033f470}, mtx_lock = 0, mtx_recurse = 0}, p_oppid = 0,
  p_vmspace = 0xc033f490, p_swtime = 0, p_realtimer = {it_interval = {
      tv_sec = 0, tv_usec = 0}, it_value = {tv_sec = 3224630448,
      tv_usec = 0}}, p_runtime = {sec = 0, frac = 0}, p_uu = 3224630480,
  p_su = 0, p_iu = 0, p_uticks = 0, p_sticks = 3224630512, p_iticks = 0,
  p_profthreads = 0, p_maxthrwaits = 0, p_traceflag = 0,
  p_tracevp = 0xc033f510, p_tracecred = 0x0, p_textvp = 0x0, p_siglist = {
    __bits = {0, 0, 0, 3224630576}}, p_lock = 0 '\0', p_sigiolst = {
    slh_first = 0x0}, p_sigparent = 0, p_sig = 0, p_code = 3224630608,
  p_stops = 0, p_stype = 0, p_step = 0 '\0', p_pfsflags = 0 '\0',
  p_nlminfo = 0x0, p_aioinfo = 0xc033f570, p_singlethread = 0x0,
  p_suspcount = 0, p_xthread = 0x0, p_magic = 0,
  p_comm = "ю3У\220", '\0' <repeats 15 times>, p_pgrp = 0x0,
  p_sysent = 0xc033f5b0, p_args = 0x0, p_cpulimit = 0, p_nice = 0 '\0',
  p_xstat = 0, p_klist = {kl_lock = 0xc033f5d0, kl_list = {slh_first = 0x0}},
  p_numthreads = 0, p_numksegrps = 0, p_md = {md_utrap = 0x0,
    md_sigtramp = 0xc033f5f0}, p_itcallout = {c_links = {sle = {
        sle_next = 0x0}, tqe = {tqe_next = 0x0, tqe_prev = 0x0}}, c_time = 0,
    c_arg = 0xc033f610, c_func = 0, c_flags = 0}, p_uarea = 0x0, p_acflag = 0,
  p_ru = 0x0, p_peers = 0x0, p_leader = 0x0, p_emuldata = 0xc033f650,
  p_label = 0x0, p_sched = 0x0}

-- 
Maxim Konovalov


More information about the freebsd-sparc64 mailing list