Re: Kernel logging I/O Errors for Disk Images
Hi, On Tue, Nov 6, 2012 at 11:29 AM, Julian Mayer <julian@corecode.at> wrote:
now, the weird thing is, i recently discovered that sometimes the kernel will also log I/O errors for disk images in addition to real devices as well. i believed this to be impossible because it makes no sense at all, after all a disk image is just a file stored on another volume.
i'd like to have some more information about when and why this can occur (so i can know whether this is something my app should ignore or inform the user about), and what it means. does a I/O error occuring on a disk image mean the image is damaged? shouldn't it just fail to mount in this case? or does it mean there is a problem on the volume where the image is stored? but shouldn't the I/O error get logged for that volume then?
Have you noticed anything in particular about the type of disk images for which this happens, or where they're stored? I've noticed that corrupted disk images downloaded from the web normally fail a checksum test on trying to attach them, but if the same disk image is accessed via a network share, the checksum test is skipped. This makes sense as transferring the whole image over the network for checksum generation can take a while. In any case, problems are then of course detected when actually trying to read affected files from the mounted volume. I haven't checked to see if I/O errors are reported for the block device in this case, but it seems plausible. Another candidate might be sparse bundles. These consist of multiple files, which are much more likely to be in different stages of being committed to disk if the write is somehow interrupted. I could easily imagine blocks going missing if that happens. These are just hypotheses, but they should be easy to test. phil -- http://philjordan.eu/ - Phil Jordan, software development contractor _______________________________________________ Do not post admin requests to the list. They will be ignored. Darwin-kernel mailing list (Darwin-kernel@lists.apple.com) Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/darwin-kernel/site_archiver%40lists.... This email sent to site_archiver@lists.apple.com
participants (1)
-
Phil Jordan