devd based AUTOMOUNTER

Alexander Leidinger Alexander at Leidinger.net
Tue Feb 28 15:27:01 UTC 2012


Quoting vermaden <vermaden at interia.pl> (from Mon, 27 Feb 2012 21:36:46 +0100):

>> Unfortunately, I spent a few days that would
>> have to understand how it is possible to
>> detect the inserted CD-ROM with devd; but
>> alas - the only thing that detects changes
>> in the drive CD-ROM - a :sysctl kern.geom.conftxt
>>
>> before inserting the disc:
>> kern.geom.conftxt: 0 DISK cd0 0 2048 hd 0 sc 0
>> ...
>>
>> after inserting the disc:
>> kern.geom.conftxt: 0 DISK cd0 4700372992 2048 hd 0 sc 0
>
> Thanks, at least we have 'something' we can cepend on.
>
> I can create an 'active wait' daemon for that, like the skel below:
>
> while sleep 3
> do
>   case $( sysctl -n kern.geom.conftxt ) in
>     (0 DISK cd0 0 2048 hd 0 sc 0)
>       echo "No CD in the drive ..."
>       # umount procedure ...
>       ;;
>     (0 DISK cd0 * * hd 0 sc 0)
>       echo "We have CD here!"
>       # do something about it lile mount_cd9660
>       ;;
>   esac
> done
>
> But a devd(8) event would be far better, maybe some somple commit to  
> devd(8) would help here? My knowledge does not allow me to add these  
> bits to devd(8).

The kernel does not poll for CD changes, and the people guarding the  
relevant CD code where against something like this in the kernel  
everytime this came up in the past. So no devd event for this.

Bye,
Alexander.

-- 
Back when I was a boy, it was 40 miles to everywhere,
uphill both ways and it was always snowing.

http://www.Leidinger.net    Alexander @ Leidinger.net: PGP ID = B0063FE7
http://www.FreeBSD.org       netchild @ FreeBSD.org  : PGP ID = 72077137



More information about the freebsd-stable mailing list