How to Run


  • nvwa help

    Prints the help information. The printed information is as follows:

    nvwa - a tool used for openEuler kernel update.
    nvwa [global options] command [command options] [arguments...]
    update   specify kernel version for nvwa to update
    init     init nvwa running environment
    help, h  Shows a list of commands or help for one command
    --help, -h     show help (default: false)
    --version, -v  print the version (default: false)
  • nvwa update

    When the kernel is live upgraded to a version, the NVWA searches for the kernel image and ramfs in the /boot directory. The kernel must be named in the vmlinuz- format, and rootfs in the initramfs-.img format.

    Note that the upgrade may fail. If the upgrade fails, some processes or services that are dumped will stop running.

  • nvwa init

    Clears the running information generated by NVWA and modifies the systemd configuration. This command is used to clear the running information before the NVWA is executed or after the execution fails.

Use Restriction

  1. For services that need to be saved using NVWA, you need to set StandardOutput and StandardError in the configuration. The following uses Redis as an example:

    Description=Redis persistent key-value database
    ExecStart=/usr/bin/redis-server /etc/redis.conf --supervised systemd
  2. To use the acceleration feature, you need to modify the cmdline and allocate proper memory. For details, click [here](# NVWA Acceleration Feature Description and Usage).

  3. SELINUX needs to be disabled during the running process.

    Theoretically, you need to disable the NVWA service only after you run the NVWA update command and before you restart the system to restore the process. It is recommended that SELinux be disabled during the entire process.

NVWA Acceleration Feature Description and Use

  1. cpu park

    The cpu park command uses the kexec process to make the CPU stay busy waiting, so as to respond to the interrupt request sent by the primary core more quickly, and reduce the status changes.

    To use cpu park, you need to add “cpuparkmem=0x200000000” to cmdline. 0x200000000 is the start address of the memory that is not used by other programs. cpuparkmem occupies the memory space whose size is about 1 MB from this address.

    Note that if the memory is sufficient, it is recommended that the address range be after 4G(0x100000000). The first 4 GB is usually reserved by each system component, which is prone to conflict.

  2. quick kexec

    quick kexec accelerates image loading using kexec.

    To use quick kexec, you need to enable related options in the configuration file. For more information, see “Configuration” in Installation and Deployment.

  3. pin_memory

    pin memory accelerates the storage and recovery of the CRIU.

    To use pin memory, you need to enable related options in the configuration file. For more information, see “Configuration” in Installation and Deployment.

Generated Log Information

The logs generated by the kernel live upgrade tool consist of two parts:

  • Logs generated during running

    Run the service nvwa status command to view logs.

  • Logs generated while retaining the running information

    The logs are stored in the process/service folder in the path specified by criu_dir.

Bug Catching

Buggy Content

Bug Description

Submit As Issue

It's a little complicated....

I'd like to ask someone.


Just a small problem.

I can fix it online!

Bug Type
Specifications and Common Mistakes

● Misspellings or punctuation mistakes;

● Incorrect links, empty cells, or wrong formats;

● Chinese characters in English context;

● Minor inconsistencies between the UI and descriptions;

● Low writing fluency that does not affect understanding;

● Incorrect version numbers, including software package names and version numbers on the UI.


● Incorrect or missing key steps;

● Missing prerequisites or precautions;

● Ambiguous figures, tables, or texts;

● Unclear logic, such as missing classifications, items, and steps.


● Technical principles, function descriptions, or specifications inconsistent with those of the software;

● Incorrect schematic or architecture diagrams;

● Incorrect commands or command parameters;

● Incorrect code;

● Commands inconsistent with the functions;

● Wrong screenshots.

Risk Warnings

● Lack of risk warnings for operations that may damage the system or important data.

Content Compliance

● Contents that may violate applicable laws and regulations or geo-cultural context-sensitive words and expressions;

● Copyright infringement.

How satisfied are you with this document

Not satisfied at all
Very satisfied
Click to create an issue. An issue template will be automatically generated based on your feedback.