Current-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: kaybe lake panic



On Fri, Dec 20, 2019 at 05:49:57PM +0000, Andrew Doran wrote:
> I had a quick look and this code is confusing.  I could not see what lock
> it's trying to get.  Presumably you have a netbsd.gdb in the build directory
> (seems to be the way now).  Could you feed it to gdb and try: "info line
> *execlists_update_context+0x1234" where 0x1234 is the actual offset shown in
> the backtrace.

Thanks for the tip! (See below)

> On Thu, Dec 19, 2019 at 03:31:15PM +0000, Patrick Welche wrote:
> > Just tried NetBSD on a lapto that has what I think is a Kaybe lake
> > intel chip, and (no serial console - just copied off the screen):
> > 
> > vpanic
> > snprintf
> > lockdebug_abort1
> > mutex_enter
Line 511 of "../../../../kern/kern_mutex.c"

> > execlists_update_context
Line 3025 of "../../../../external/bsd/drm2/dist/drm/i915/i915_drv.h"
  3019                  /*
  3020                   * Pages must be pinned so that we need not hold the
  3021                   * lock to prevent them from disappearing.
  3022                   */
  3023                  KASSERT(obj->pages != NULL);
  3024                  mutex_enter(obj->base.filp->vmobjlock);
  3025                  page = uvm_pagelookup(obj->base.filp, ptoa(n));
  3026                  mutex_exit(obj->base.filp->vmobjlock);

> > execlists_context_unqueue
Line 408 of "../../../../external/bsd/drm2/dist/drm/i915/intel_lrc.c"

> > gen8_emit_request
Line 605 of "../../../../external/bsd/drm2/dist/drm/i915/intel_lrc.c"

> > __i915_add_request
Line 3142 of "../../../../external/bsd/drm2/dist/drm/i915/i915_gem.c"

> > i915_gem_init_hw
Line 5465 of "../../../../external/bsd/drm2/dist/drm/i915/i915_gem.c"

> > i915_gem_init
> > i915_driver_load
> > drm_dev_register
> > drm_pci_attach
> > i915drmkms_attach_real
> > config_mountroot_thread
> > 
> > (x/s panicstr doesn't show me much)
> > 
> > ps shows 2 x configroot, 2 x idle.
> > 
> > What does one look for in show locks?
> > 
> > Lock 0 initialized at drm_dev_alloc, sleep/adaptive, no active turnstile
> > 
> > 
> > Lock 0 initialized at main, spin, holds 0 excl 1, wants 0 excl 1
> >        curcpu holds 1 wanted by 000000000000000
> > Lock 1 initialized at logical_ring_init, spin, holds 0 excl 1, wants 0 excl 0
> >        wait/spin 0/1
> > 
> > 
> > Cheers,
> > 
> > Patrick


Home | Main Index | Thread Index | Old Index