ufunc

指定したユーザー空間アドレスのシンボルを出力します。usymの別名です。

_usymaddr ufunc(uintptr_t)

ufunc関数は、指定されたユーザー空間アドレスに対応するシンボルを出力する、データ記録関数です。func関数はusymの別名です。

例7-61 usymを使用してアドレスのシンボルを取得する方法

この例では、usym関数を使用して、dateコマンドの実行時に、各openatシステム・コールのシンボルを戻す方法を示します。この節は、プロセスIDがターゲット・プロセスと一致するかどうかを確認することを前提としています。組込みのucaller変数は、プローブの起動時にスレッドの場所へのポインタを取得するために使用されます。
sudo dtrace -n syscall::openat:entry'/pid == $target/{usym(ucaller);}' -c 'date'

次のような出力が生成されます:

CPU     ID                    FUNCTION:NAME
  2 147861                     openat:entry   libc.so.6`_nl_find_locale                         
Mon 20 Feb 18:12:58 GMT 2023
  2 147861                     openat:entry   0x0