Port-sparc archive

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

Re: partially working SMP again



>    It fails in CPU_INFO_FOREACH() in cpu.c:xcall().
>    CPU_INFO_FOREACH() macro in sparc/cpuvar.h is defined as:
>    > #define CPU_INFO_FOREACH(cii, cp)        \
>    > cii = 0; (cp = cpus[cii]) && cp->eintstack && cii < sparc_ncpus; cii++
>    so maybe we should allocate cpus[_MAXNCPU + 1] in cpu.c
>    to make sure cpus[4] == NULL.
> 
> hmmm.. or just move the cii < sparc_ncpus test first again?

In that case, we also have to initialize cp (struct cpuinfo) = NULL
otherwise kern/kern_cpu.c gets uninitialized variable warnings
because it has (cp) == NULL checks after CPU_INFO_FOREACH().

---
Izumi Tsutsui


Home | Main Index | Thread Index | Old Index