Date: Fri, 11 May 2012 19:09:55 -0500 From: Terence Telkamp <Terence_Telkamp@DELL.com> To: "freebsd-scsi@freebsd.org" <freebsd-scsi@freebsd.org> Cc: John Partridge <J_Partridge@DELL.com> Subject: Problem with Removable Disk Device on FreeBSD Message-ID: <975552A94CBC0F4DA60ED7B36C949CBA03E75B33D9@shandy.Beer.Town>
next in thread | raw e-mail | index | archive | help
Hello, I am having trouble using an RD1000 device with FreeBSD 8.1 and 9.0. The R= D1000 that I'm using is a device that has a removable SATA disk cartridge a= nd connects to a host system through USB. There are other similar devices = out there such as the RDX: http://www.imation.com/en-US/Scalable-Storage/Scalable-Storage-Products/RDX= -Removable-Hard-Disk-Storage/RDX-Removable-HDD-Storage-System-USB-30/ My problem is that FreeBSD does not recognize when the cartridge is inserte= d or ejected from the device. If I attach the RD1000 to the host with a ca= rtridge already inserted a dev node entry shows up (e.g. da0) as well as a = slice entry (e.g. da0s1), but the slice entry does not go away after I ejec= t the cartridge. Conversely, if I attach the RD1000 that doesn't have a ca= rtridge inserted, a dev node entry for the device shows up (e.g. da0), but = no slice entery shows up. Inserting a cartridge after the RD1000 has alrea= dy been attached still does not cause the slice entry that I expect to show= up. No dmesg shows up to indicate that anything has changed when the cart= ridge is inserted or ejected after the device has alread been attached. Do= ing a camcontrol rescan had no effect on FreeBSD recogizing if there is a = cartridge inserted in the RD1000 or not. Searching the internet, I found that people have run into similar issue usi= ng zip drives. They were able to work around the issue by redirecting a tr= ue command to the device (e.g. true > da0). After doing that FreeBSD will = recognize an inserted cartridge in the RD1000 and create a dev slice entry = for it. However, that doesn't help me recognize eject events. Also, I wou= ld like to understand the root cause and hopefully find a more direct solut= ion instead of just a workaround. I've experimented with hosts running other other operating systems. Both L= inux and Windows hosts respond to the insertion and removal of the cartridg= e. I tried the version of the RD1000 that connects to the host through a SATA = port and saw similar results. If I booted with a cartridge already inserte= d in the RD1000 I would get an afd dev entry, but if I booted without a car= tridge inserted the afd entry would not be present. Inserting or ejecting = the cartridge after boot would have no effect. Doing an atacontrol detac= h would cause the afd dev entry to disappear whether the cartridge was inse= rted or not. Doing a subsequent atacontrol attach would cause the afd entr= y to reappear only if a cartridge was inserted. Since the behavior is simi= lar whether the RD1000 is attached through USB or SATA, I am wondering if t= here is a problem in the CAM or SCSI layers of FreeBSD. Does anybody have any ideas on how I can narrow this issue down further? Terence Telkamp Storage Development Associate Engineer II Dell | Compellent
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?975552A94CBC0F4DA60ED7B36C949CBA03E75B33D9>