Eric Reitmaier
2011-10-26 13:59:07 UTC
We cannot run the zilstat utility (from
http://www.richardelling.com/Home/scripts-and-programs-1/zilstat) on
an Solaris 10 u9 / x86 installed according SUNWCreq (which is a core
install)
while it works fine on a similar config but installed with all
packages (SUNWCXall)
So we know it works in this environment but it seems we miss an
essential package here. That causes the
dtrace: failed to compile script ./zilstat.d: line 42: operands have
incompatible types: "string" == "int (*)()"
Which is at:
fbt::zil_lwb_write_start:entry
/OPT_pool == 0 || POOL == args[0]->zl_dmu_pool->dp_spa->spa_name/
{
So it looks like "args[0]->zl_dmu_pool->dp_spa->spa_name" returns a
different type.
We can avoid this by using the stringof function.
But then in the end it fails with
dtrace: error on enabled probe ID 2 (ID 20429:
fbt:zfs:zil_lwb_write_start:entry): invalid address (0x32736d3432636d)
in predicate at DIF offset 44
What are we missing?
Thanks for your help.
Eric
http://www.richardelling.com/Home/scripts-and-programs-1/zilstat) on
an Solaris 10 u9 / x86 installed according SUNWCreq (which is a core
install)
while it works fine on a similar config but installed with all
packages (SUNWCXall)
So we know it works in this environment but it seems we miss an
essential package here. That causes the
dtrace: failed to compile script ./zilstat.d: line 42: operands have
incompatible types: "string" == "int (*)()"
Which is at:
fbt::zil_lwb_write_start:entry
/OPT_pool == 0 || POOL == args[0]->zl_dmu_pool->dp_spa->spa_name/
{
So it looks like "args[0]->zl_dmu_pool->dp_spa->spa_name" returns a
different type.
We can avoid this by using the stringof function.
But then in the end it fails with
dtrace: error on enabled probe ID 2 (ID 20429:
fbt:zfs:zil_lwb_write_start:entry): invalid address (0x32736d3432636d)
in predicate at DIF offset 44
What are we missing?
Thanks for your help.
Eric