SCSI ターゲットドライバの getinfo(9E) ルーチンは、ほかのドライバとほぼ同じです (DDI_INFO_DEVT2INSTANCE の場合の詳細についてはgetinfo() Entry Pointを参照してください)。ただし、getinfo() ルーチンの DDI_INFO_DEVT2DEVINFO の場合、ターゲットドライバは dev_info ノードへのポインタを返す必要があります。このポインタは、ドライバの状態構造体に保存することも、scsi_device(9S) 構造体の sd_dev フィールドから取得することもできます。次の例は、代替の SCSI ターゲットドライバの getinfo() コードフラグメントを示しています。
使用例 17-4 代替 SCSI ターゲットドライバの getinfo() コードフラグメントcase DDI_INFO_DEVT2DEVINFO:
dev = (dev_t)arg;
instance = getminor(dev);
xsp = ddi_get_soft_state(statep, instance);
if (xsp == NULL)
return (DDI_FAILURE);
*result = (void *)xsp->sdp->sd_dev;
return (DDI_SUCCESS);