Port-arm archive

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

Re: Re: BCM5301x SMP



Hi

Thanks for your advice.

I add this code.

diff --git a/sys/kern/kern_sig.c b/sys/kern/kern_sig.c
index db99a13542fd..6cbc1576c7dc 100644
--- a/sys/kern/kern_sig.c
+++ b/sys/kern/kern_sig.c
@@ -1119,6 +1119,7 @@ sigpost(struct lwp *l, sig_t action, int prop, int sig)
        struct proc *p = l->l_proc;
 
        KASSERT(mutex_owned(p->p_lock));
+panic("sigpost(%d)", sig);
 
        /*
         * If the LWP is on the way out, sigclear() will be busy draining all
@@ -1311,6 +1312,7 @@ kpsignal2(struct proc *p, ksiginfo_t *ksi)
        bool toall;
        bool traced;
        int error = 0;
+panic("kpsignal2(%d)", signo);
 
        KASSERT(!cpu_intr_p());
        KASSERT(mutex_owned(&proc_lock));

problem case.

[   4.5676083] WARNING: CHECK AND RESET THE DATE!
init: fatal sign[  34.7399758] panic: kpsignal2(20)
[  34.7399758] cpu0: Begin traceback...
...
db{0}> ps 
PID     LID S CPU     FLAGS       STRUCT LWP *               NAME WAIT
1         1 3   1       180           9fde9d00               init wait

no problem case.

[   4.5775946] WARNING: CHECK AND RESET THE DATE!
[   4.5999814] 1.1(init): trap: signo=10 code=2 addr=0x7fffeb58 trap=0x1c06
[   4.5999814] r0=7fffeff0 r1=00000000 r2=00000000 r3=00000000
[   4.6136304] r4=00000000 r5=00000000 r6=00000000 r7=00000000
[   4.6136304] r8=00000000 r9=00000000 rA=00000000 rB=00000000
[   4.6250933] ip=7fffeb58 sp=7fffeb58 lr=7bed0588 pc=7bed0588 spsr=00000010
[   4.6320815] panic: kpsignal2(10)
[   4.6320815] cpu0: Begin traceback...
...
db{0}> ps
PID     LID S CPU     FLAGS       STRUCT LWP *               NAME WAIT
1    >    1 7   0         0           9fde64c0               init

BCM5301x is non FDT. Where I add cache opration?

Thanks

Hiroki Mori

> ----- Original Message -----
> 
> From: "Christoph Badura" <bad%bsd.de@localhost>
> To: "や もり" <yamori813%yahoo.co.jp@localhost>
> Cc: "port-arm%NetBSD.org@localhost" <port-arm%NetBSD.org@localhost>
> Date: 2025/06/26 木 17:22
> Subject: Re: BCM5301x SMP
> 
> 
> On Thu, Jun 26, 2025 at 10:45:47AM +0900, Mori Hiroki wrote:
> > BCM5301x SMP is work now.
> 
> Cool progress!
> 
> > But I have problem that is boot stop at init.
> > [   3.4799782] root on sd0a dumps on sd0b
> > [   3.5199804] kern.module.path=/stand/evbarm/10.1/modules
> > [   3.5345361] WARNING: no TOD clock present
> > [   3.5345361] WARNING: using filesystem time
> > [   3.5429274] WARNING: CHECK AND RESET THE DATE!
> > init: fatal sign
> 
> This is printed by https://nxr.netbsd.org/xref/src/sbin/init/init.c#486
> Installed via this: https://nxr.netbsd.org/xref/src/sbin/init/init.c#305
> 
> Bummer you don't see the signal number.
> 
> I would set a breakpoint in DDB on `kpsignal2' or `sigpost' or add a printf
> to those functions in sys/kern/kern_sig.c and print the signal number.
> 
> I would also check whether init(8) is running on the boot (primary) CPU or
> on one of the others.  If it is not running on the boot CPU I would suspect
> cache synchronization issues similar to what I ran into with
> https://cvsweb.netbsd.org/bsdweb.cgi/src/sys/arch/arm/fdt/cpu_fdt.c.diff?r1=1.28;r2=1.29
> 
> --chris
> 



Home | Main Index | Thread Index | Old Index