update slices on (a)cd devices

Bernd Walter ticso at cicely12.cicely.de
Wed Jan 23 13:30:53 PST 2008


On Wed, Jan 23, 2008 at 08:19:24PM +0100, Martin Laabs wrote:
> Hi,
> 
> I ask the same question some day on -questions before but got
> no usefull answer. Since it is also more technical
> related I try it here again.
> 
> I created a dvd with two slices a and b. (Don't ask for the
> reason - it is a test for my backup system)
> This slices are ufs formated and gbde encrypted. However -
> if I insert the DVD (and also a read access is done) the device
> nodes acd0a and acd0b are not created automaticly. But if
> the DVD is inserted *before* boot this two nodes are there
> and stay even if I insert a "normal" DVD without slices.
> 
> An other way to update the device nodes is to detach an
> attach the ata channel with atacontrol while the "sliced" DVD
> is beeing inserted. But this is not very smart. (In particular
> if there is i.e. a second device at this channel that is then
> disconnected too.)
> A similar way it to reload the atapicam modul. In this case
> the cd0* device nodes are updated. The problems are the same
> as with atacontroll de-/attach.
> 
> So I'am searching for a better way to tell the kernel/devfs
> to update the device node list of the atapi devices. Unfortu-
> nately I couldn't find a appropiate ioctl in the source of
> atacontrol. Since I didn't understand the conecpt of geom
> fully now I'm not sure whether geom also handle the
> "single" (a)d[0-] and (a)cd[0-] devices and if there is maybe
> a geom command for the "slice reread"

More or less there is:
cp /dev/null /dev/acd0
Not sure if it works for CD's but it works for removeable disks.
The problem is that many drives don't tell you about media change,
so you have to poll or trigger yourself.

-- 
B.Walter                http://www.bwct.de      http://www.fizon.de
bernd at bwct.de           info at bwct.de            support at fizon.de


More information about the freebsd-hackers mailing list