> > This is a conceptual patch relative to cdrtools-1.10 which makes it
> > possible to use cdrecord together with Solaris 8 Volume Manager. 
> > ... at this point you have to issue
> > 'eject cdrom' after you burned it and push the tray back in order to
> > get it mounted.
> 
> Couldn't you use cdrecord's --eject option instead of eject cdrom?
> Getting it back in could probably also be done with software.

It's not about mechanical movement of the tray, but about tricking
/usr/sbin/vold to reread and remount the media. In more details. First
note that once vold is running you can't open /dev/rdsk/cXtYdZs2 (Oh! I
failed to mention that "volumized" cdrecord does not expect /dev/scg* to
be present). So patched cdrecord finds its way to
/vol/dev/rdsk/cXtYdZ/unknown_format instead. This in turn means that
everything cdrecord throws at it passes Volume Management kernel driver
(hereafter "the V-driver") which is free to do certain magic. Now
'cdrecord -eject/load' uses USCSI ioctls to open/clode tray which are
passed through verbatim. 'eject cdrom' in turn uses DKIOCEJECT ioctl
which also makes the V-driver throw an exception at vold which triggers
it to do certain magic in the user-land. You may ask why not make
cdrecord issue DKIOCEJECT to eject and then USCSI to load? Well, the
problem is that once DKIOCEJECT passes the V-driver it (so to say)
interrupts all communications and awaits for further instructions from
vold, meaning that the "load" USCSI never gets through and you find
yourself in "catch-22" situation...

Cheers. Andy.


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to