Re: [PATCH v1] MIPS:KDUMP: set a right value to kexec_indirection_page variable

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Ralf,

What do you think of this patch?

Thanks
Wei
On 08/04/2014 11:46 AM, Yang,Wei wrote:
ping.

BR,
Wei
On 07/31/2014 07:42 PM, Wei.Yang@xxxxxxxxxxxxx wrote:
From: Yang Wei <Wei.Yang@xxxxxxxxxxxxx>

Since there is not indirection page in crash type, so the vaule of the head field of kimage structure is not equal to the address of indirection page but IND_DONE. so we have to set kexec_indirection_page variable to the address of
the head field of image structure.

Signed-off-by: Yang Wei <Wei.Yang@xxxxxxxxxxxxx>

           Hi Ralf,

Please help me take a look at this patch, I have already verified it on Cavium 6100EVB board.

          Thanks
          Wei
---
  arch/mips/kernel/machine_kexec.c |    9 +++++++--
  1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/arch/mips/kernel/machine_kexec.c b/arch/mips/kernel/machine_kexec.c
index 992e184..531b70d 100644
--- a/arch/mips/kernel/machine_kexec.c
+++ b/arch/mips/kernel/machine_kexec.c
@@ -71,8 +71,13 @@ machine_kexec(struct kimage *image)
      kexec_start_address =
          (unsigned long) phys_to_virt(image->start);
  -    kexec_indirection_page =
-        (unsigned long) phys_to_virt(image->head & PAGE_MASK);
+    if (image->type == KEXEC_TYPE_DEFAULT) {
+        kexec_indirection_page =
+            (unsigned long) phys_to_virt(image->head & PAGE_MASK);
+    } else {
+        kexec_indirection_page = (unsigned long)&image->head;
+    }
+
        memcpy((void*)reboot_code_buffer, relocate_new_kernel,
             relocate_new_kernel_size);






[Index of Archives]     [Linux MIPS Home]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Linux]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux