svn commit: r304068 - head/sys/powerpc/mpc85xx
Justin Hibbits
jhibbits at FreeBSD.org
Sun Aug 14 03:49:38 UTC 2016
Author: jhibbits
Date: Sun Aug 14 03:49:37 2016
New Revision: 304068
URL: https://svnweb.freebsd.org/changeset/base/304068
Log:
Only flush bp_kernload from the dcache, no need to sync the icache on the boot CPU.
__syncicache() only syncs the icache on the current CPU, it doesn't touch the
cache on any other core. Replace the call with cpu_flush_dcache() instead.
Since bp_kernload is not touched again by the boot CPU in this code path, dcbf
is no less efficient than the dcbst from __syncicache() by invalidating the
cache line.
Modified:
head/sys/powerpc/mpc85xx/platform_mpc85xx.c
Modified: head/sys/powerpc/mpc85xx/platform_mpc85xx.c
==============================================================================
--- head/sys/powerpc/mpc85xx/platform_mpc85xx.c Sun Aug 14 00:40:17 2016 (r304067)
+++ head/sys/powerpc/mpc85xx/platform_mpc85xx.c Sun Aug 14 03:49:37 2016 (r304068)
@@ -404,7 +404,7 @@ mpc85xx_smp_start_cpu(platform_t plat, s
* bp_kernload is in the boot page. Sync the cache because ePAPR
* booting has the other core(s) already running.
*/
- __syncicache(&bp_kernload, sizeof(bp_kernload));
+ cpu_flush_dcache(&bp_kernload, sizeof(bp_kernload));
ap_pcpu = pc;
__asm __volatile("msync; isync");
More information about the svn-src-head
mailing list