Re: Kernel logging I/O Errors for Disk Images
Hi, I can't answer all your questions, but can at least clarify some of it. Based on mount.h we can see what the events are: #define VQ_VERYLOWDISK 0x0200 /* file system has *very* little disk space left */ #define VQ_LOWDISK 0x0004 /* we're low on space */ Which kind of makes sense, the disk image may not have very much free space, and this is probably generated on mount. The errors however, I can't help with. Definitely seems odd, Nick On 06/11/2012, at 9:29 PM, Julian Mayer wrote:
hello
i need some more information about when and why the kernel logs "I/O Errors" to the kernel/system logfile for disk images.
background: whenever a I/O operation fails, the kernel logs a I/O error looking like this: kernel[0]: disk0s2: I/O error. this is quite common for optical media, e.g. when they are scratched. when this occurs repeatedly normal harddisks this is often a sign of serious disk-problems (e.g. disk run out of bad blocks, defective cabling or controller, etc). therefore my app is able to recognice I/O errors that have been logged and warn the user about it.
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?
thanks, julian
p.s. the log-file entries indicating an I/O error occuring on a disk image that was forwarded to me from a customer and clearly indicates the error being logged for a mounted image:
Oct 27 19:22:07 xxx.local diskarbitrationd[15]: unable to probe /dev/disk3 (status code 0xFFFFFFFC). Oct 27 19:22:07 --- last message repeated 1 time --- Oct 27 19:22:07 xxx kernel[0]: disk3: I/O error. Oct 27 19:22:09 --- last message repeated 1 time --- Oct 27 19:22:09 xxx.local KernelEventAgent[42]: tid 00000000 received event(s) VQ_LOWDISK, VQ_VERYLOWDISK (516) Oct 27 19:22:09 xxx.local KernelEventAgent[42]: tid 00000000 type 'hfs', mounted on '/private/tmp/.vbfolder_IdHqvC', from '/dev/disk3s2', low disk, very low disk Oct 27 19:35:16 xxx.local SMARTReporter[278]: I/O-Error check: ERROR! - Found 3 problems on 1 of 3 checked disk(s): I/O Error found on disk: /dev/disk3 Name: 'Lifetime Map Updater' Errors: 3
p.s.s. what does the "low disk, very low disk" thing mean? ;)<smime.p7s> _______________________________________________ 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/nblievers%40threatmetr...
This email sent to nblievers@threatmetrix.com
_______________________________________________ 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)
-
Nick Blievers