Re: drm-current-kmod panics

From: Jeff Roberson <jroberson_at_jroberson.net>
Date: Thu, 19 Dec 2019 09:20:32 -1000 (HST)
On Thu, 19 Dec 2019, Hans Petter Selasky wrote:

> On 2019-12-19 19:40, Cy Schubert wrote:
>> In message <e9d67a1e-cb80-3c79-704a-5aa3d0ed20ba_at_selasky.org>, Hans Petter
>> Sela
>> sky writes:
>>> On 2019-12-19 17:50, Cy Schubert wrote:
>>>> Has anyone else had these since Dec 9?
>>>> 
>>>> <4>WARN_ON(!mutex_is_locked(&fbc->lock))WARN_ON(!mutex_is_locked(&fbc->
>>>> lock))
>>>> panic: page fault
>>>> cpuid = 1
>>>> time = 1576772837
>>>> KDB: stack backtrace:
>>>> db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame
>>>> 0xfffffe007c98b930
>>>> vpanic() at vpanic+0x17e/frame 0xfffffe007c98b990
>>>> panic() at panic+0x43/frame 0xfffffe007c98b9f0
>>>> trap_fatal() at trap_fatal+0x386/frame 0xfffffe007c98ba50
>>>> trap_pfault() at trap_pfault+0x4f/frame 0xfffffe007c98bac0
>>>> trap() at trap+0x41b/frame 0xfffffe007c98bbf0
>>>> calltrap() at calltrap+0x8/frame 0xfffffe007c98bbf0
>>>> --- trap 0xc, rip = 0x242c52, rsp = 0x7fffffffbe70, rbp = 0x7fffffffbe90 
>>>> --
>>> -
>>>> Uptime: 59m7s
>>>> 
>>>> It is triggered through random keystrokes or mouse movements.
>>> 
>>> Looks like a double fault.
>>> 
>>> Did you recompile drm-current-kmod with the latest kernel sources?
>> 
>> Yes.
>> 
>> 
>
> Are you able to get a full backtrace?

Since my recent scheduler commits the following functions now return 
without the thread lock held:

sched_add()/sched_wakeup()/sched_switch()/mi_switch()/setrunnable()/sleepq_abort()

I audited drm and linuxkpi for use of these functions.  There was one in 
the linuxkpi sources that I corrected in the same commit as the change in 
api.  I don't see any users of these in drm-current-kmod.  It is possible 
that I have somehow missed it.  I did just commit a fix to cpuset that may 
be called indirectly somehow.  That fix is r355915.  The first commit of 
this series was r35579.

If this is at fault I may need some assistance in identifying what the 
offending call is.  It should show up with INVARIANTS/WITNESS more quickly 
than a pagefault if so though.

Thanks,
Jeff

>
> --HPS
> _______________________________________________
> freebsd-current_at_freebsd.org mailing list
> https://lists.freebsd.org/mailman/listinfo/freebsd-current
> To unsubscribe, send any mail to "freebsd-current-unsubscribe_at_freebsd.org"
>
Received on Thu Dec 19 2019 - 18:20:38 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:41:22 UTC