Bug 1430091
| Summary: | crash: mod [-sS] command may erroneously reassign module symbol addresses | ||
|---|---|---|---|
| Product: | Red Hat Enterprise Linux 7 | Reporter: | Dave Anderson <anderson> |
| Component: | crash | Assignee: | Dave Anderson <anderson> |
| Status: | CLOSED ERRATA | QA Contact: | Emma Wu <xiawu> |
| Severity: | urgent | Docs Contact: | |
| Priority: | unspecified | ||
| Version: | 7.4 | CC: | qzhao, xiawu |
| Target Milestone: | rc | ||
| Target Release: | --- | ||
| Hardware: | All | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Fixed In Version: | crash-7.1.8-2.el7 | Doc Type: | If docs needed, set a value |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2017-08-01 22:04:38 UTC | Type: | Bug |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Embargoed: | |||
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHBA-2017:2019 |
Description of problem: With certain kernel modules, it is possible that the "mod -[sS]" options, which load the debuginfo data of one or all kernel modules, may reassign one or more module symbol values from the kallsyms-generated values to incorrect values. Version-Release number of selected component (if applicable): All crash versions to date, including the most recently released crash-7.1.8 version. How reproducible: Depending upon the kernel modules installed, it may be unnoticeable, or there may be a message indicating that an erroneously-assigned symbol has a value that is beyond the end of the module's address space. Steps to Reproduce: 1. mod -S (or mod -s <module>) 2. 3. Actual results: Typically there will be a message similar to this example: crash> mod -s nfsd mod: nfsd: last symbol: nfsd4_cb_layout_fail is not _MODULE_END_nfsd? MODULE NAME SIZE OBJECT FILE ffffffffa06cea80 nfsd 333626 /lib/modules/3.10.0-514.el7.x86_64/kernel/fs/nfsd/nfsd.ko crash> The message above is indicating that the highest symbol value registered has a value that is beyond the end of the module's address space. But there may be more than just the highest symbol value, and worse yet, if the erroneously reassigned symbol values fit within the module's address space, there will be no message at all. Expected results: Module symbol values should be correct. Additional info: This bug has been fixed upstream by this git commit: https://github.com/crash-utility/crash/commit/ce0648294b98a1ba4e78c9817db198d4e2bbb17f Fix for the "mod -[sS]" option to prevent the erroneous reassignment of one or more symbol values of a kernel module. Without the patch, when loading a kernel module, a message may indicate "mod: <module>: last symbol: <symbol> is not _MODULE_END_<module>?" may be displayed, and one or more symbols may be reassigned an incorrect symbol value. If none of the erroneous symbol value reassignments are beyond the end of the module's address space, then there will be no message. (anderson)