Re: IOMedia filter - unmounting disks
Re: IOMedia filter - unmounting disks
- Subject: Re: IOMedia filter - unmounting disks
- From: Dan Markarian <email@hidden>
- Date: Fri, 7 Sep 2007 17:17:59 -0400
Hey Eric,
That's fine, except those still come through my probe method.
It is quite reasonable to probe CD or DVD media. It is not advisable
to produce CD or DVD media by contrast.
I'm not sure what the most reliable means of identifying a device as
a CD or DVD is.
You need not screen them out offhand. You must be careful with such
exclusions, since the difference between DVD-RW and DVD-RAM is vast.
Filtered volumes show up in Disk Utility twice.
Is the volume actually mounted twice in BSD? I assume that might
happen when the parent media appears to be something mountable to the
system, so we go ahead and mount it while the child media is in
limbo. It is advisable that the software tag the content with a
custom partition type to prevent such scenarios, or else make sure
that the filter scheme remain matched to the parent media during the
query to the user, even if without a child media yet, so that we
realize that it is of interest to you.
Dan
On 4 Sep 2007, at 12:55 PM, Eric Long wrote:
Hi,
I'm working on an IOMedia filter. It seems to work, but I have a
few problems.
1. Some disks do not eject if I attach to them. They disappear from
the desktop, but seem to remain mounted in some sense internally. I
don't know why this is happening. Anyone else know what I need to do
here?
2. Another issue is that the documentation warns that this filter
mechanism does not work with CDs and DVDs. That's fine, except those
still come through my probe method. I'm not sure what the most
reliable means of identifying a device as a CD or DVD is. Also, what
about something like Blue-Ray? I don't know what I should look for as
a general mechanism to screen these out.
3. I screen out disk images by looking for the
kIOPropertyPhysicalInterconnectLocationKey, which I hope is
sufficient. I would like to support disk images, but if I delay at
all publishing the child service, they seem to time-out and I get this
"No mountable file system found" alert.
4. Filtered volumes show up in Disk Utility twice. I let the user
choose which volumes to filter, so not all volumes are filtered. If
the user selects an unfiltered volume and tries to repartition it, the
OS unmounts the volume then remounts it. We see this new mount and
prompt the user to ask about filtering. Whether or not the disk is
filtered, Disk Utility hangs at this point and won't recover unless
you unplug the volume in contention.
While it makes sense to disable us while performing such operations, I
can only advise this in my documentation. I really would prefer to
avoid trouble all together. Anyone with ideas about this?
Thanks for any help,
Eric
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Darwin-kernel mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Darwin-kernel mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden