PERFORCE change 132485 for review

Rafal Jaworowski raj at FreeBSD.org
Fri Jan 4 07:25:19 PST 2008


http://perforce.freebsd.org/chv.cgi?CH=132485

Change 132485 by raj at raj_mimi on 2008/01/04 15:24:25

	Temporary fix to avoid confusion of 'kstack0' symbol and make e500
	kernel operational again. kstack0 area requires further
	improvements (space for kstack0 is now statically defined within
	kernel body, does not have guard pages etc., which should be fixed)

Affected files ...

.. //depot/projects/e500/sys/powerpc/booke/locore.S#3 edit
.. //depot/projects/e500/sys/powerpc/booke/machdep.c#4 edit

Differences ...

==== //depot/projects/e500/sys/powerpc/booke/locore.S#3 (text+ko) ====

@@ -255,8 +255,8 @@
 /*
  * Setup a temporary stack
  */
-	lis	%r1, kstack0 at ha
-	addi	%r1, %r1, kstack0 at l
+	lis	%r1, kstack0_space at ha
+	addi	%r1, %r1, kstack0_space at l
 	addi	%r1, %r1, (16384 - 256)
 
 /*
@@ -466,7 +466,7 @@
 /************************************************************************/
 	.data
 	.align	4
-GLOBAL(kstack0)
+GLOBAL(kstack0_space)
 	.space	16384
 	
 /*

==== //depot/projects/e500/sys/powerpc/booke/machdep.c#4 (text+ko) ====

@@ -153,6 +153,8 @@
 
 extern void *trapcode, *trapsize;
 
+extern unsigned char kstack0_space[];
+
 struct kva_md_info kmi;
 struct pcpu __pcpu[MAXCPU];
 struct trapframe frame0;
@@ -406,7 +408,7 @@
 	init_param2(physmem);
 
 	/* Finish setting up thread0. */
-	thread0.td_kstack = (uintptr_t)kstack0;
+	thread0.td_kstack = (vm_offset_t)kstack0_space;
 	thread0.td_pcb = (struct pcb *)
 		(thread0.td_kstack + KSTACK_PAGES * PAGE_SIZE) - 1;
 	bzero((void *)thread0.td_pcb, sizeof(struct pcb));


More information about the p4-projects mailing list