hat_getkpfnum() DDI 関数は旧式とされています。開発者は、hat_getkpfnum() DDI インタフェースを使用しないようにデバイスドライバを更新する必要があります。ドライバが hat_getkpfnum() を使用していると、次のような警告メッセージが表示されます。
WARNING: Module mydrv is using the obsolete hat_getkpfnum(9F) interface in a way that will not be supported in a future release of Solaris. Please contact the vendor that supplied the module for assistance, or consult the Writing Device Drivers guide, available from http://www.sun.com for migration advice. --- Callstack of bad caller: hat_getkpfnum_badcall+93 hat_getkpfnum+6e mydrv_setup_tx_ring+2d mydrv_do_attach+84 mydrv_attach+242 devi_attach+6f attach_node+62 i_ndi_config_node+82 i_ddi_attachchild+4a devi_attach_node+4b devi_attach_children+57 config_immediate_children+6e devi_config_common+77 mt_config_thread+8b |
ドライバが hat_getkpfnum() を使用しているかどうかを確認するには、ドライバのソースコードを参照するか、nm() を使用してドライバのシンボルを調べます。たとえば、ドライバ mydrv を調べる場合は、次の構文を入力します。
% nm /usr/kernel/drv/mydrv | grep hat_getkpfnum |
ドライバが hat_getkpfnum() を使用しないように移行する方法については、『Writing Device Drivers』の付録 B「Summary of Solaris DDI/DKI Services」を参照してください。