Long-Term Supported Versions

    Constraints

    Version Constraints

    OS version: openEuler 22.03 LTS SP2 Architecture: x86 or AArch64

    Application Constraints

    Currently, user-mode patches support only Redis and Nginx.

    Note:

    1. Currently, each software needs to be adapted to process the LINE macro. Currently, only Redis and Nginx are adapted. Other software that is not adapted may cause the patch size to be too large. (Parameters will be introduced in the future to support user adaptation.)
    2. Each user-mode live patch can contain only one ELF file. To fix multiple bugs, you can pass the patch files of multiple bug fixes to the patch making parameters to make a live patch for multiple bugs.

    Language Constraints

    Theoretically, patches are compared at the object file level, which is irrelevant to the programming language. Currently, only the C and C++ languages are tested.

    Others

    • Only 64-bit OSs are supported.
    • Only the ELF format can be hot-patched. Interpreted languages are not supported.
    • Only GCC and G++ compilers are supported.
    • The compiler must support the -gdwarf, -ffunction-sections, and -fdata-sections parameters.
    • The debug information must be in the DWARF format.
    • Cross compilation is not supported.
    • Source files that are in different paths but have the same file name, same global variables, and same functions cannot be recognized.
    • Assembly code, including .S files and inline assembly code, cannot be modified.
    • External symbols (dynamic library dependencies) cannot be added.
    • Multiple patches cannot be applied to the same binary file.
    • Mixed compilation of C and C++ is not supported.
    • C++ exceptions cannot be modified.
    • The -g3 group section compilation option, specific compilation optimization options, and specific GCC plugins are not supported.
    • ifunc cannot be added by using __attribute__((ifunc("foo"))).
    • TLS variables cannot be added by using __thread int foo.

    Bug Catching

    Buggy Content

    Bug Description

    Submit As Issue

    It's a little complicated....

    I'd like to ask someone.

    PR

    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.

    Usability

    ● Incorrect or missing key steps;

    ● Missing prerequisites or precautions;

    ● Ambiguous figures, tables, or texts;

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

    Correctness

    ● 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
    Submit
    Click to create an issue. An issue template will be automatically generated based on your feedback.
    Bug Catching
    编组 3备份