Re: panic: mutex pmap not owned at ... efirt_machdep.c:255

From: Kyle Evans <kevans_at_freebsd.org>
Date: Sat, 4 Aug 2018 21:46:39 -0500
On Sat, Aug 4, 2018 at 3:37 AM, Konstantin Belousov <kostikbel_at_gmail.com> wrote:
> On Fri, Aug 03, 2018 at 11:27:02PM -0500, Kyle Evans wrote:
>> On Fri, Aug 3, 2018 at 10:10 PM, Eitan Adler <lists_at_eitanadler.com> wrote:
>> > Hi all,
>> >
>> > After installing the latest current kernel I get the following panic:
>> >
>> > panic: mutex pmap not owned at ... efirt_machdep.c:255
>> > cpuid =3
>> > time = 1
>> > ...
>> > mtx_assert()
>> > efi_arch_enter()
>> > efirt_modevents()
>> > module_register_init()
>> > mi_startup()
>> > btext()
>> >
>>
>> This seems odd- pmap lock is acquired at [1], then asserted shortly
>> later at [2]... I avoid some of this stuff as well as I can, but is it
>> actually possible for PCPU_GET(...) acquired curpmap to not match
>> curthread->td_proc->p_vmspace->vm_pmap in this context?
>>
>> [1] https://svnweb.freebsd.org/base/head/sys/dev/efidev/efirt.c?view=markup#l260
>> [2] https://svnweb.freebsd.org/base/head/sys/amd64/amd64/efirt_machdep.c?view=markup#l254
> There could be that curpcpu not yet synced with proc0 pmap.  It could be
> fixed.
>

He now gets a little further, but ends up with the same panic due to
efirtc_probe trying to get time to verify the rtc's actually
implemented. What kind of approach must we take to ensure curcpu is
synced?
Received on Sun Aug 05 2018 - 00:47:02 UTC

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