Bug 1659429

Summary: crash: CentOS 6.7: SEGV @ is_kernel_text (value=0) at symbols.c:2814
Product: Red Hat Enterprise Linux 6 Reporter: Tim Jones <tim>
Component: crashAssignee: Dave Anderson <anderson>
Status: CLOSED UPSTREAM QA Contact: Kernel General QE <kernel-general-qe>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 6.7CC: tim
Target Milestone: rc   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-12-14 18:39:35 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:

Description Tim Jones 2018-12-14 11:02:46 UTC
Description of problem:

Latest crash from source crashes with debug level > 1.

Version-Release number of selected component (if applicable):

$ cat /etc/redhat-release 
CentOS release 6.7 (Final)

crash version:
c13637a (HEAD -> master, origin/master, origin/HEAD)

How reproducible:

Every time.

Steps to Reproduce:
1. crash -d 2

Actual results:

...
GNU_GET_DATATYPE[unwind_table]: returned via gdb_error_hook 
NOTE: unwind_table structure has changed, or does not exist in this kernel
init_unwind_table: DWARF_UNWIND_EH_FRAME

Program received signal SIGSEGV, Segmentation fault.
0x0000000000558919 in is_kernel_text (value=0) at symbols.c:2814
2814			if (!IN_MODULE(value, lm) && !IN_MODULE_INIT(value, lm))
Missing separate debuginfos, use: debuginfo-install glibc-2.12-1.212.el6.x86_64 libgcc-4.8.3-10.el6.x86_64 ncurses-libs-5.7-4.20090207.el6.x86_64 zlib-1.2.3-29.el6.x86_64
(gdb) bt
#0  0x0000000000558919 in is_kernel_text (value=0) at symbols.c:2814
#1  0x0000000000514f8c in dump_gnu_request (req=0x10e23c0 <shared_bufs>, in_gdb=131072) at gdb_interface.c:522
#2  0x00000000005144b7 in gdb_interface (req=0x10e23c0 <shared_bufs>) at gdb_interface.c:381
#3  0x0000000000561538 in datatype_info (name=0xa0f174 "kernel_symbol", member=0xa0f16e "value", dm=0x0) at symbols.c:5523
#4  0x00000000005543ca in store_module_symbols_v2 (total=23927, mods_installed=78) at symbols.c:1671
#5  0x00000000004f94a8 in module_init () at kernel.c:3645
#6  0x0000000000464a6e in main_loop () at main.c:772
#7  0x0000000000741bc4 in current_interp_command_loop () at interps.c:326
#8  0x00000000007425d3 in captured_command_loop (data=0x0) at main.c:258
#9  0x00000000007409bb in catch_errors (func=0x7425b8 <captured_command_loop>, func_args=0x0, errstring=0xa9c2e4 "", mask=6) at exceptions.c:557
#10 0x000000000074398c in captured_main (data=0x7fffffffd370) at main.c:1064
#11 0x00000000007409bb in catch_errors (func=0x74286b <captured_main>, func_args=0x7fffffffd370, errstring=0xa9c2e4 "", mask=6) at exceptions.c:557
#12 0x00000000007439d1 in gdb_main (args=0x7fffffffd370) at main.c:1079
#13 0x0000000000743a26 in gdb_main_entry (argc=2, argv=0x7fffffffd4f8) at main.c:1099
#14 0x0000000000513a96 in gdb_main_loop (argc=3, argv=0x7fffffffd4f8) at gdb_interface.c:76
#15 0x00000000004648c3 in main (argc=3, argv=0x7fffffffd4f8) at main.c:707

Comment 2 Dave Anderson 2018-12-14 18:39:35 UTC
Tim,

Thanks for the report, it's much appreciated.

There's actually 2 bugs here, although you would only see one of them when running
against a rhel6 kernel.  I applied two patches today to address them:
  
https://github.com/crash-utility/crash/commit/e8649695dee436e6405aa938374e69189aff2fd4

  commit e8649695dee436e6405aa938374e69189aff2fd4
  Author: Dave Anderson <anderson>
  Date:   Fri Dec 14 11:13:13 2018 -0500

    Fix for an initialization-time session failure when all three of the
    following conditions exist:
      (1) invoking the session with "crash -d2" or larger debug number
      (2) running against a Linux 3.3 or later kernel
      (3) using a post-7.2.4 crash utility that has the new "kmem -n"
          support above for the display of memory blocks
    Without the patch, the crash session fails with the error message
    "crash: invalid structure member offset: device_kobj".
    (anderson)

https://github.com/crash-utility/crash/commit/e48ca1a2da66e64c80e3ca0afc93c68432d1b770

  commit e48ca1a2da66e64c80e3ca0afc93c68432d1b770
  Author: Dave Anderson <anderson>
  Date:   Fri Dec 14 13:25:59 2018 -0500

    Fix for an initialization-time segmentation violation when invoking
    crash-7.2.4 or later with "crash -d2" or larger debug number.
    (anderson)

Since Red Hat/Centos doesn't have crash-7.2.4 in any of our
releases, this isn't a Red Hat Enterprise Linux 6 bug.  So
I'm just going close it with an UPSTREAM tag.

Thanks again,
  Dave