| 1 | From 357954613bdbab0c1f3986589ff30cc4855a2efd Mon Sep 17 00:00:00 2001 |
| 2 | From: root <root@cent.localnet> |
| 3 | Date: Sun, 6 Dec 2009 18:26:43 +0000 |
| 4 | Subject: [PATCH 03/14] kexec fix |
| 5 | |
| 6 | --- |
| 7 | arch/x86/kernel/relocate_kernel_32.S | 6 ++++++ |
| 8 | 1 files changed, 6 insertions(+), 0 deletions(-) |
| 9 | |
| 10 | --- a/arch/x86/kernel/relocate_kernel_32.S |
| 11 | +++ b/arch/x86/kernel/relocate_kernel_32.S |
| 12 | @@ -54,8 +54,10 @@ relocate_kernel: |
| 13 | movl %eax, CR0(%edi) |
| 14 | movl %cr3, %eax |
| 15 | movl %eax, CR3(%edi) |
| 16 | +#ifndef CONFIG_X86_RDC321X |
| 17 | movl %cr4, %eax |
| 18 | movl %eax, CR4(%edi) |
| 19 | +#endif |
| 20 | |
| 21 | /* read the arguments and say goodbye to the stack */ |
| 22 | movl 20+4(%esp), %ebx /* page_list */ |
| 23 | @@ -124,7 +126,9 @@ identity_mapped: |
| 24 | * Setting everything to zero seems safe. |
| 25 | */ |
| 26 | xorl %eax, %eax |
| 27 | +#ifndef CONFIG_X86_RDC321X |
| 28 | movl %eax, %cr4 |
| 29 | +#endif |
| 30 | |
| 31 | jmp 1f |
| 32 | 1: |
| 33 | @@ -195,8 +199,10 @@ identity_mapped: |
| 34 | ret |
| 35 | |
| 36 | virtual_mapped: |
| 37 | +#ifndef CONFIG_X86_RDC321X |
| 38 | movl CR4(%edi), %eax |
| 39 | movl %eax, %cr4 |
| 40 | +#endif |
| 41 | movl CR3(%edi), %eax |
| 42 | movl %eax, %cr3 |
| 43 | movl CR0(%edi), %eax |
| 44 | |