[Crash-utility] resolve symbols: sial.so vs eppic.so

Sebastian Ott sebott at linux.vnet.ibm.com
Thu Sep 6 10:49:58 UTC 2012


The way symbols are resolved in sial scripts is different between
sial.so and eppic.so. A symbol resolves to the address of the
symbol using sial.so and to the memory content using eppic.so.

In crash 6.0.9 I got e.g.:

crash> sym dev_kobj
979138 (b) dev_kobj
crash> rd dev_kobj
          979138:  0000000174c9aac0                    ....t...
crash> dev_kobj
dev_kobj = $3 = (struct kobject *) 0x174c9aac0

Using a sial script:

crash> !cat foo.sial
string foo_help()  { return ""; }
string foo_opt()   { return ""; }
string foo_usage() { return ""; }

int foo()
{
  printf("0x%x\n", dev_kobj);

  return 1;
}

./eppic.so: shared object loaded
crash> load foo.sial
crash> foo
0x74c9aac0

./sial.so: shared object loaded
crash> load foo.sial
crash> foo
0x979138

Is this an intentional change or a bug?

Regards,
Sebastian




More information about the Crash-utility mailing list