kasbert / OS-X-SAT-SMART-Driver

Max OS X kernel driver for providing access to external drive SMART data
578 stars 74 forks source link

Not an issue! Just a question... #12

Closed giezi closed 10 years ago

giezi commented 10 years ago

Dear Jarkko

By googling for some OS X and SCSI related topics, I've come across your Github project page.

The reason for contacting you: I'm desperately looking for a hint/solution were I can modify/increase the disk time out parameter within OS X for my SCSI Disk in the Virtual Machine. Actually, I'm looking for exactly this here: http://kb.hurricane-ridge.com/os/freebsd/setting-scsi-timeout-values-for-freebsd-vms-on-vmwarenetapp but in my specific case for the OS X VM guests. I've already tried to add this FreeBSD parameter to the /etc/sysctl.conf but OS X doesn't recognize it.

Do you maybe have an idea where and how OS X is dealing with this? I'm also happy to pay you for the answer or any good hint :)

Many many thanks for your time! Respectfully, Reto

kasbert commented 10 years ago

This is really just guessing, but I would try to tweak these properties (http://www.opensource.apple.com/source/IOSCSIArchitectureModelFamily/IOSCSIArchitectureModelFamily-139.0.2/IOSCSIArchitectureModel/IOSCSIProtocolInterface.h):

// This key is used to define the Read Time Out for a particular device // This property overrides all of the protocol defaults // This Property is a value, in miliseconds

define kIOPropertyReadTimeOutDurationKey "Read Time Out Duration"

// This key is used to define the Maximum Write Time Out for a particular protocol // This property overrides all of the protocol defaults // This Property is a value, in miliseconds

define kIOPropertyWriteTimeOutDurationKey "Write Time Out Duration"

You can find the property from several kernel extensions and I cannot tell which you should modify and if it is possible just to go and edit the Info.plist file.

grep -r 'Read Time Out Duration' /System/Library/Extensions/

For example IOAHCIFamily.kext/Contents/PlugIns/IOAHCISerialATAPI.kext/Contents/Info.plist:

        <key>Read Time Out Duration</key>
        <integer>15000</integer>
        <key>Retry Count</key>
        <integer>1</integer>
        <key>Write Time Out Duration</key>
        <integer>15000</integer>
giezi commented 10 years ago

Jarkko, thank you so much!

It seems that our SCSI Disk settings are within the AppleLSIFusion.kext > Info.plist. I'll test it soon and let you know!

Btw: are you aware of any option, how to overwrite specific settings within the Info.plist with every reboot?

Once again, many thanks! Reto

kasbert commented 10 years ago

Could it be something with the kext cache ?

Anyway, I'll close this issue as it is not a defect.