diff --git a/smartmontools/CHANGELOG b/smartmontools/CHANGELOG index de4561070e4e68443a7fc6e9e9c0383b9ede8e09..fe79e9014b5fc804235f594dba1ddbe3302cddb3 100644 --- a/smartmontools/CHANGELOG +++ b/smartmontools/CHANGELOG @@ -43,8 +43,12 @@ NOTES FOR FUTURE RELEASES: see TODO file. <DEVELOPERS: ADDITIONS TO THE CHANGE LOG GO JUST BELOW HERE, PLEASE> + [CF] Linux: Fix spin-up of SATA drive if '-n standby' is used + (ticket #37). For some reason, this happens if the SCSI/SAT + device is opened with O_RDWR instead of O_RDONLY. + [CF] Windows: Fix parsing of 'tw_cli' output for 3ware 9.5.x release - (ticket #43.) + (ticket #43). [CF] Add USB IDs of Seagate FreeAgent Go, Seagate Expansion Portable and WD My Passport (IDE). diff --git a/smartmontools/NEWS b/smartmontools/NEWS index 89bc563c1fa08415f5d42e135e5649d26d963ef1..97f78521b7e9c517e6071bd0f8ce227285cc57a5 100644 --- a/smartmontools/NEWS +++ b/smartmontools/NEWS @@ -15,6 +15,7 @@ Summary: smartmontools release 5.40 - Fix regression in smartctl option '-q, --quietmode'. - Fix regression in smartd directive '-l selftest'. - Linux: Allow smartd 'DEVICESCAN -d sat'. +- Linux: Fix spin-up of SATA drive if '-n standby' is used. - Windows: Fix parsing of 3ware 'tw_cli' output. Date 2009-12-09 diff --git a/smartmontools/os_linux.cpp b/smartmontools/os_linux.cpp index 96d7d938385296db08a226bc66d2c1183f5d664a..103af7b26ee98650f6e661818a068bccf072c952 100644 --- a/smartmontools/os_linux.cpp +++ b/smartmontools/os_linux.cpp @@ -845,7 +845,9 @@ private: linux_scsi_device::linux_scsi_device(smart_interface * intf, const char * dev_name, const char * req_type, bool scanning /*= false*/) : smart_device(intf, dev_name, "scsi", req_type), - linux_smart_device(O_RDWR | O_NONBLOCK, O_RDONLY | O_NONBLOCK), + // If opened with O_RDWR, a SATA disk in standby mode + // may spin-up after device close(). + linux_smart_device(O_RDONLY | O_NONBLOCK), m_scanning(scanning) { }