[Crash-utility] crash extensions help
Dave Anderson
anderson at redhat.com
Mon Aug 3 19:06:21 UTC 2015
----- Original Message -----
> Hi Dave,
>
> I found you from https://www.redhat.com/mailman/listinfo/crash-utility.
> I was really impressed with your contribution to the crash utility.
> I tried subscribing to the crash utility mailing list. But no luck.
Sorry about that -- I was on vacation for a couple of weeks until today.
You're on the list now.
>
> I started writing the crash extensions,
> I am unable to read the all the members of task_struct and mm_struct structures.
> I am trying to read mm->hiwater_vm, the defs.h header file do not have
> struct_mm_hiwater_mm variable as a offset_table member.
>
> Could you please suggest me the ways that I could read all the members of
> the task_struct and mm_struct.
> Thanks in Advance.
>
> --
> Thanks & Regards
> Rupesh P
For structure members that are not in the built-in offset_table, you can just
use MEMBER_OFFSET() directly, for example:
MEMBER_OFFSET("mm_struct", "hiwater_rss")
which returns a long offset value. But be aware that it returns -1 on a failure,
so you should check for success/failure before using the return value.
The built-in OFFSET() macro verifies that the the pre-initialized offset value
read by MEMBER_OFFSET() and stored in the offset_table is not a -1, and if it is,
it will generate a FATAL error. In an extension module, it's up to you to do the
verification.
Dave
More information about the Crash-utility
mailing list