svn commit: r304656 - head/sys/powerpc/powerpc

Justin Hibbits jhibbits at FreeBSD.org
Tue Aug 23 04:37:05 UTC 2016


Author: jhibbits
Date: Tue Aug 23 04:37:03 2016
New Revision: 304656
URL: https://svnweb.freebsd.org/changeset/base/304656

Log:
  tlb1_init() can be called twice on BookE
  
  Summary:
  There is no need to call tlb1_init() twice. Now it is called first time from
  booke_init() and second time from powerpc_init() (where it is under BOOKE
  switch). Although this does not cause immediate problems in the mainline kernel,
  this can lead to undesirable side effects like two TLB entries with the same VA
  in the TLB1. Presence of two TLB entries with the same VA can hang CPU.
  
  Test Plan:
  Add initial mapping for UART to the tlb1_init(), build and boot the kernel,
  ensure that mapping presents only once (most convinient way - through Lauterbah
  or similar hardware debugger)
  
  Submitted by:	Ivan Krivonos <int0dster_gmail.com>
  Differential Revision: https://reviews.freebsd.org/D7607

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

Modified: head/sys/powerpc/powerpc/machdep.c
==============================================================================
--- head/sys/powerpc/powerpc/machdep.c	Tue Aug 23 04:26:30 2016	(r304655)
+++ head/sys/powerpc/powerpc/machdep.c	Tue Aug 23 04:37:03 2016	(r304656)
@@ -288,10 +288,6 @@ powerpc_init(vm_offset_t fdt, vm_offset_
 		bzero(__bss_start, _end - __bss_start);
 		init_static_kenv(NULL, 0);
 	}
-#ifdef BOOKE
-	tlb1_init();
-#endif
-
 	/* Store boot environment state */
 	OF_initial_setup((void *)fdt, NULL, (int (*)(void *))ofentry);
 


More information about the svn-src-head mailing list