Re: crash -s may have some problem

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

 



baiwd wrote:
Hi:
   When I  use crash, I encounter this strange thing.
   Executing "vm 1" under  crash, I see:
PID: 1      TASK: e0000001ff908000  CPU: 0   COMMAND: "init"
      MM               PGD          RSS    TOTAL_VM
e000000185baac80  e000000185ca8000   256k    4464k
     VMA              START             END        FLAGS FILE
e000000185abc878                0             4000  84011
e000000185abca88 2000000000000000 200000000003c000    875 /lib/ld-2.5.so
e000000185abcb38 2000000000048000 2000000000050000 100873 /lib/ld-2.5.so
e000000185abfaa8 2000000000060000 20000000000e0000 75 /lib/libsepol.so.1 e000000185abf738 20000000000e0000 20000000000ec000 70 /lib/libsepol.so.1 e000000185abf948 20000000000ec000 20000000000f0000 100073 /lib/libsepol.so.1
e000000185abf9f8 20000000000f0000 20000000000fc000 100073
e000000185abfb58 20000000000fc000 2000000000124000 75 /lib/libselinux.so.1 e000000185abf898 2000000000124000 2000000000130000 70 /lib/libselinux.so.1 e000000185abf5d8 2000000000130000 2000000000134000 100073 /lib/libselinux.so.1
e000000185abf688 2000000000134000 2000000000138000 100073
e000000185abd218 2000000000138000 20000000003a0000 75 /lib/libc-2.5.so e000000185abd168 20000000003a0000 20000000003ac000 70 /lib/libc-2.5.so e000000185abc458 20000000003ac000 20000000003b4000 100073 /lib/libc-2.5.so
e000000185abc718 20000000003b4000 20000000003b8000 100073
e000000185abd798 20000000003b8000 20000000003c0000 75 /lib/libdl-2.5.so e000000185abc508 20000000003c0000 20000000003cc000 70 /lib/libdl-2.5.so e000000185abd848 20000000003cc000 20000000003d0000 100073 /lib/libdl-2.5.so
e000000185abd8f8 20000000003d0000 20000000003e8000 100073
e000000185abc928 4000000000000000 4000000000014000   1875 /sbin/init
But when I execute "vm 1" under crash -s, the second part is missing.
[root@rhel51rc2 crash-4.0-6.1]# crash -s
crash> vm 1
PID: 1      TASK: e0000001ff908000  CPU: 0   COMMAND: "init"
      MM               PGD          RSS    TOTAL_VM
      0                 0            0k       0k

I think is caused by that IS_ZOMBIE(task) in memory.c failed. And this failure is caused by that the value of _ZOMBIE_ has not been initialized. the initialization of _ZOMBIE_ is in initialize_task_struct(), called by show_context() finally. But when
executing "crash -s", it's not called.
I added the following code in memory.c before using _ZOMBIE_, but I don't know whether it's good, it need to change initialize_task_state() to nonstatic and use
TASK_STATE_UNINITIALIZED which is now in task.c only.
"
       if (_ZOMBIE_ == TASK_STATE_UNINITIALIZED)
               initialize_task_state();
"

Best Regards


Nice catch!  I'm going to just call initialize_task_state() from
task_init() so that it will get done unconditionally.  Queued for
the next release.

Thanks,
 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