Solaris 模块调试器指南

mdb_pwalk_dcmd()

int mdb_pwalk_dcmd(const char *wname, const char *dcname, int argc,

			const mdb_arg_t *argv, uintptr_t addr);

使用 wname 指定的 walker 启动从 addr 开始的局部 walk,然后使用指定的 argcargv 在每一步调用由 dcname 指定的 dcmd。如果成功,此函数返回 0;如果出错,此函数返回 -1。 如果 walker 本身返回致命错误,如果调试器无法识别指定的 walker 名称或 dcmd 名称,或者如果 dcmd 本身将 DCMD_ABORTDCMD_USAGE 返回给 walker,则该函数失败。如果存在命名冲突,则可以使用反引号 (`) 运算符限定 walker 名称和 dcmd 名称的作用域。 从 mdb_pwalk_dcmd() 调用时,dcmd 将在其 flags 参数中设置 DCMD_LOOPDCMD_ADDRSPEC 位,而且首次调用时将设置 DCMD_LOOPFIRST