Javen Wu wrote: > `devfsadm -C` only cleans up the symbol links under /dev/ rather than > /devices/ > > There are two possibilities the nodes under /devices were not cleaned up > after you removed your target. > 1. the nodes were opened or referenced, (devi_ref != 0) during you > removed your target in other side, so ndi_devi_offline() failed in iscsi > initiator driver, the nodes were not removed in device tree. So you saw > them still in format(1M) even the device has already got gone.
i have dtrace'd this. ndi_devi_offline fails because devi_ref is not equal to zero. in my case, it's equal to seventeen ! this is due to 16 calls by devfsadm to dv_mknod. if i run devfsadm-C from Initiator side, then dv_destroy is called 17 times, and node/dip go away. i think problem is in iscsi (Initiator). when iscsitgtd sends Sense data to Initiator, Ini throws it away, tears down the TCP connection and creates a new TCP conn. can't iscsi send a sysevent or something to devfsadm so it'll eventually call dv_destroy ? /andrew _______________________________________________ driver-discuss mailing list [email protected] http://mail.opensolaris.org/mailman/listinfo/driver-discuss
