Port-arm archive

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

Re: Platform specific fix for ARM MP startup issue




> On Oct 21, 2021, at 3:16 PM, Rory Bolt <rory.bolt%gmail.com@localhost> wrote:
> 
> As I noted earlier, I am concerned about putting a platform specific
> fix in the mainline code for this issue. I have tested this ARM
> platform specific alternate solution successfully.
> 
> This patch eliminates the need to change the location of "cold = 0;"
> in sys/kern/init_main.c, so there is no chance of affecting other
> platforms.
> 
> Please consider adding this to the development branch...

This patch looks totally reasonable to me.

> 
> The only file affected is src/sys/arch/arm/pic/pic.c:
> 
> netbsd$ cvs diff pic.c
> Index: pic.c
> ===================================================================
> RCS file: /cvsroot/src/sys/arch/arm/pic/pic.c,v
> retrieving revision 1.72
> diff -r1.72 pic.c
> 722a723,725
>>      struct lwp *l = curlwp;
>>      /* During init, we can still be on idle thread AFTER cold set to 0 */
>>      int idle = (l->l_stat == LSIDL);
> 793c796
> <       if (cold || !is->is_mpsafe) {
> ---
>>      if (cold || idle || !is->is_mpsafe) {
> netbsd$
> 
> Enjoy!
> -Rory

-- thorpej



Home | Main Index | Thread Index | Old Index