Re: 2.6.25-rc2-git1 test

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Solofo Ramangalahy wrote:
Hello,

Testing crash with 2.6.25-rc2-git1 leads to:
..............................................................................
crash 4.0-4.13
[ ... snipped ... ]
please wait... (patching 33611 gdb minimal_symbol values)
crash: invalid structure member offset: tss_struct_ist
       FILE: x86_64.c  LINE: 682  FUNCTION: x86_64_ist_init()

[.../crash-4.0.4-13/bin/crash] error trace: 4522bb => 4cc1cb => 4ce2fb => 5029bd

  5029bd: OFFSET_verify+159
  4ce2fb: x86_64_ist_init+501
  4cc1cb: x86_64_init+2903
  4522bb: main_loop+115

WARNING: Because this kernel was compiled with gcc version 4.2.3, certain
         commands or command options may fail unless crash is invoked with
         the  "--readnow" command line option.
..............................................................................

. This is probably also the case with less recent kernel versions (cannot
  confirm as of now).
. The vmcore was the one produced by "echo c > /proc/sysrq-trigger"
. Advice of using --readnow does not suppress the error.
. Using --no_data_debug option allows to go further.

This is a result of the recent x86/x86_64 merger.  And I expect that
there will be several more crippling issues associated with the data
structure changes associated with that merger.

But it *may* be possible to get past what your seeing by applying this
change to x86_64.c:

--- crash-4.0-4.13/x86_64.c.orig
+++ crash-4.0-4.13/x86_64.c
@@ -255,7 +255,7 @@ x86_64_init(int when)
                MEMBER_OFFSET_INIT(thread_struct_rsp, "thread_struct", "rsp");
                MEMBER_OFFSET_INIT(thread_struct_rsp0, "thread_struct", "rsp0");
                STRUCT_SIZE_INIT(tss_struct, "tss_struct");
-               MEMBER_OFFSET_INIT(tss_struct_ist, "tss_struct", "ist");
+               MEMBER_OFFSET_INIT(tss_struct_ist, "x86_hw_tss", "ist");
                MEMBER_OFFSET_INIT(user_regs_struct_rip,
                        "user_regs_struct", "rip");
                MEMBER_OFFSET_INIT(user_regs_struct_rsp,

This only works because the new embedded x86_hw_tss structure (which
contains the ist[] array of exception stack pointers) is the first
member of the generic tss_struct.

Dave



--
Crash-utility mailing list
Crash-utility@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/crash-utility

[Index of Archives]     [Fedora Development]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite News]     [KDE Users]     [Fedora Tools]

 

Powered by Linux