Skip to content
Snippets Groups Projects
user avatar
Waiman Long authored
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=2090231



commit a8390ba9
Author: Masahiro Yamada <masahiroy@kernel.org>
Date:   Thu, 19 Aug 2021 09:57:36 +0900

    kbuild: remove stale *.symversions

    cmd_update_lto_symversions merges all the existing *.symversions, but
    some of them might be stale.

    If the last EXPORT_SYMBOL is removed from a C file, the *.symversions
    file is not deleted or updated. It contains stale CRCs, but still they
    will be used for linking the vmlinux or modules.

    It is not a big deal when the EXPORT_SYMBOL is really removed. However,
    when the EXPORT_SYMBOL is moved to another file, the same __crc_<symbol>
    will appear twice in the merged *.symversions, possibly with different
    CRCs if the function argument is changed at the same time. It would
    confuse module versioning.

    If no EXPORT_SYMBOL is found, let's remove *.symversions explicitly.

Signed-off-by: default avatarMasahiro Yamada <masahiroy@kernel.org>
Reviewed-by: default avatarKees Cook <keescook@chromium.org>

Signed-off-by: default avatarWaiman Long <longman@redhat.com>
0314986f
Linux kernel
============

There are several guides for kernel developers and users. These guides can
be rendered in a number of formats, like HTML and PDF. Please read
Documentation/admin-guide/README.rst first.

In order to build the documentation, use ``make htmldocs`` or
``make pdfdocs``.  The formatted documentation can also be read online at:

    https://www.kernel.org/doc/html/latest/

There are various text files in the Documentation/ subdirectory,
several of them using the Restructured Text markup notation.

Please read the Documentation/process/changes.rst file, as it contains the
requirements for building and running the kernel, and information about
the problems which may result by upgrading your kernel.