NetBSD-Bugs archive

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

Re: kern/55889: panic when boot GENERIC64 kernel on RaspberryPi4 (without RPi4_UEFI_Firmware)



The following reply was made to PR kern/55889; it has been noted by GNATS.

From: mlelstv%serpens.de@localhost (Michael van Elst)
To: gnats-bugs%netbsd.org@localhost
Cc: 
Subject: Re: kern/55889: panic when boot GENERIC64 kernel on RaspberryPi4 (without RPi4_UEFI_Firmware)
Date: Mon, 21 Dec 2020 18:00:13 -0000 (UTC)

 hashikaw%mail.ru@localhost writes:
 
 >when use -current kernel on RPi4 and without RPi4_UEFI_Firmware,
 >panic with message,
 
 >[   1.5130955] panic: kernel diagnostic assertion "l->l_stat == LSONPROC" failed: file "/home/source/ab/HEAD/src/sys/kern/kern_sleepq.c", line 227 
 
 The percpu allocation needs to synchronize with other CPUs and this
 fails because the process isn't correctly initialized as LSONPROC yet.
 
 
 >[   1.6131010] fp ffffc00060f1fe40 bcm2836mp_intr_init() at ffffc00000018170 netbsd:bcm2836mp_intr_init+0x90
 
 A crude workaround is to skip bcm2836mp_intr_init() for aarch64.
 
 --- bcm2835_intr.c      16 Dec 2020 19:49:04 -0000      1.33
 +++ bcm2835_intr.c      21 Dec 2020 17:58:48 -0000
 @@ -313,7 +358,9 @@ bcm2835_icu_attach(device_t parent, devi
                 ifuncs = &bcm2836mpicu_fdt_funcs;
  
                 bcm2836mp_intr_init(self, curcpu());
 +#ifndef __aarch64__
                 arm_fdt_cpu_hatch_register(self, bcm2836mp_intr_init);
 +#endif
         } else {
                 if (bcml1icu_sc == NULL)
                         arm_fdt_irq_set_handler(bcm2835_irq_handler);
 
 -- 
 -- 
                                 Michael van Elst
 Internet: mlelstv%serpens.de@localhost
                                 "A potential Snark may lurk in every tree."
 


Home | Main Index | Thread Index | Old Index