Browse Source

Add relocate.h

Note that we can't make real-mode calls immediately after relocate_to().
tags/v0.9.3
Michael Brown 19 years ago
parent
commit
29f43896aa
1 changed files with 7 additions and 0 deletions
  1. 7
    0
      src/arch/i386/core/relocate.c

+ 7
- 0
src/arch/i386/core/relocate.c View File

@@ -2,6 +2,7 @@
2 2
 #include "memsizes.h"
3 3
 #include "osdep.h"
4 4
 #include "etherboot.h"
5
+#include "relocate.h"
5 6
 
6 7
 /* by Eric Biederman */
7 8
 
@@ -182,5 +183,11 @@ void relocate ( void ) {
182 183
 		      addr, addr + _end - _text );
183 184
 
184 185
 		relocate_to ( addr );
186
+		/* Note that we cannot make real-mode calls
187
+		 * (e.g. printf) at this point, because the pointer
188
+		 * installed_librm uses a virtual address (in order
189
+		 * that it can have a valid initialiser) and so is
190
+		 * currently invalid.
191
+		 */
185 192
 	}
186 193
 }

Loading…
Cancel
Save