1. 26 9月, 2021 1 次提交
  2. 02 9月, 2021 9 次提交
  3. 01 9月, 2021 6 次提交
  4. 31 8月, 2021 3 次提交
    • J
      pid: add pid reserve method for checkpoint and recover · 04860c5f
      Jingxian He 提交于
      hulk inclusion
      category: feature
      bugzilla: 48159
      CVE: N/A
      
      ------------------------------
      
      We record the pid of dump tasks in the reserved memory,
      and reserve the pids before init task start.
      In the recover process, free the reserved pids and realloc them for use.
      Signed-off-by: NJingxian He <hejingxian@huawei.com>
      Reviewed-by: NChen Wandun <chenwandun@huawei.com>
      Signed-off-by: NZheng Zengkai <zhengzengkai@huawei.com>
      04860c5f
    • J
      mm: add pin memory method for checkpoint add restore · 7dc4c73d
      Jingxian He 提交于
      hulk inclusion
      category: feature
      bugzilla: 48159
      CVE: N/A
      
      ------------------------------
      
      We can use the checkpoint and restore in userspace(criu) method to dump
      and restore tasks when updating the kernel.
      Currently, criu needs dump all memory data of tasks to files.
      When the memory size is very large(larger than 1G),
      the cost time of the dumping data will be very long(more than 1 min).
      
      By pin the memory data of tasks and collect the corresponding physical pages
      mapping info in checkpoint process, we can remap the physical pages to
      restore tasks after upgrading the kernel. This pin memory method can
      restore the task data within one second.
      
      The pin memory area info is saved in the reserved memblock,
      which can keep usable in the kernel update process.
      
      The pin memory driver provides the following ioctl command for criu:
      1) SET_PIN_MEM_AREA:
      Set pin memory area, which can be remap to the restore task.
      2) CLEAR_PIN_MEM_AREA:
      Clear the pin memory area info,
      which enable user reset the pin data.
      3) REMAP_PIN_MEM_AREA:
      Remap the pages of the pin memory to the restore task.
      Signed-off-by: NJingxian He <hejingxian@huawei.com>
      Reviewed-by: NChen Wandun <chenwandun@huawei.com>
      Signed-off-by: NZheng Zengkai <zhengzengkai@huawei.com>
      7dc4c73d
    • S
      kexec: Add quick kexec support for kernel · 742670c6
      Sang Yan 提交于
      hulk inclusion
      category: feature
      bugzilla: 48159
      CVE: N/A
      
      ------------------------------
      
      In normal kexec, relocating kernel may cost 5 ~ 10 seconds, to
      copy all segments from vmalloced memory to kernel boot memory,
      because of disabled mmu.
      
      We introduce quick kexec to save time of copying memory as above,
      just like kdump(kexec on crash), by using reserved memory
      "Quick Kexec".
      
      To enable it, we should reserve memory and setup quick_kexec_res.
      
      Constructing quick kimage as the same as crash kernel,
      then simply copy all segments of kimage to reserved memroy.
      
      We also add this support in syscall kexec_load using flags
      of KEXEC_QUICK.
      Signed-off-by: NSang Yan <sangyan@huawei.com>
      Reviewed-by: NKuohai Xu <xukuohai@huawei.com>
      Signed-off-by: NZheng Zengkai <zhengzengkai@huawei.com>
      742670c6
  5. 28 7月, 2021 5 次提交
  6. 23 7月, 2021 1 次提交
  7. 22 7月, 2021 7 次提交
  8. 20 7月, 2021 2 次提交
  9. 19 7月, 2021 6 次提交