id,summary,reporter,owner,description,type,status,priority,milestone,component,version,resolution,keywords,cc,field_blocks,field_dependson,field_seealso 217,Need a way to detach devices,Jakub Jermář,,"Commands like: - ata_bd - mbr_part - file_bd create new dev_handles and also nodes under /dev. There is currently no graceful way to release these resources so the associated dev_handles and nodes will exist in the system until reboot or until the respective server dies. When implementing support for device detaching, care must be taken not to detach a device which is being currently used. This can be achieved by adding a reference when it is being used (e.g. on mount). It would also be useful to be able to list what devices belong to what services, e.g.: {{{ # devadm list dev_handle driver node ========== ======= ============================= 1 rd bd/initrd 3 - null0 4 ata_bd bd/disk0 5 mbr_part bd/disk0p0 6 mbr_part bd/disk0p1 7 mbr_part bd/disk0p2 8 mbr_part bd/disk0p3 9 file_bd bd/fbdev0 # devadm list mbr_part dev_handle driver node ========== ======= ============================= 5 mbr_part bd/disk0p0 6 mbr_part bd/disk0p1 7 mbr_part bd/disk0p2 8 mbr_part bd/disk0p3 # devadm detach bd/disk0p0 bd/disk0p0 cannot be detached because it is being used. # devadm detach bd/disk0p1 # devadm list mbr_part dev_handle driver node ========== ======= ============================= 5 mbr_part bd/disk0p0 7 mbr_part bd/disk0p2 8 mbr_part bd/disk0p3 }}}",enhancement,new,major,,helenos/srv/locsrv,mainline,,,,,,"#215, #449"