global xs_task, trans_task, udp_send_task probe module("sunrpc").function("xs_connect") { printf("xs_connect: task %p\n", $task); xs_task = $task; //print_backtrace(); } probe module("sunrpc").function("xs_tcp_connect") { printf("xs_tcp_connect: task %p\n", $task); //print_backtrace(); xs_task = $task; } probe module("sunrpc").function("xprt_connect_status") { printf("xprt_connect_status: task %p\n", $task); } probe module("sunrpc").function("xprt_connect_status").return { printf("xprt_connect_status: %s", task_dump(xs_task)); } probe module("sunrpc").function("xprt_transmit") { printf("xprt_transmit: task %p\n", $task); trans_task = $task; } probe module("sunrpc").function("xprt_transmit").return { printf("xprt_transmit: %s", task_dump(trans_task)); } probe module("sunrpc").function("xs_udp_send_request") { printf("xs_udp_send_request: task %p\n", $task); udp_send_task = $task; } probe module("sunrpc").function("xs_udp_send_request").return { if ($return) printf("xs_udp_send_request: %d (%s)\n", $return, errno_str($return)); } probe begin { log("starting xprt probe") } probe end { log("ending xprt probe") }