Author: jhibbits
Date: Thu Dec  6 04:36:02 2018
New Revision: 341617
URL: https://svnweb.freebsd.org/changeset/base/341617

Log:
  powerpc: Set very low priority mode while waiting for AP unleash event
  
  The POWER9 does not recognize 'or 27,27,27' as a thread priority NOP.  On
  earlier POWER architectures, this NOP would note to the processor to give up
  resources if able, to improve performance of other threads.
  
  All processors that support the thread priority NOPs recognize the
  'or 31,31,31' NOP as very low priority, so use this to perform a similar
  function, and not burn cycles on POWER9.

Modified:
  head/sys/powerpc/powerpc/mp_machdep.c

Modified: head/sys/powerpc/powerpc/mp_machdep.c
==============================================================================
--- head/sys/powerpc/powerpc/mp_machdep.c       Thu Dec  6 04:30:24 2018        
(r341616)
+++ head/sys/powerpc/powerpc/mp_machdep.c       Thu Dec  6 04:36:02 2018        
(r341617)
@@ -78,7 +78,7 @@ machdep_ap_bootstrap(void)
        __asm __volatile("msync; isync");
 
        while (ap_letgo == 0)
-               __asm __volatile("or 27,27,27");
+               __asm __volatile("or 31,31,31");
        __asm __volatile("or 6,6,6");
 
        /*
_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "[email protected]"

Reply via email to