summaryrefslogtreecommitdiffstats
path: root/NEWS
diff options
context:
space:
mode:
Diffstat (limited to 'NEWS')
-rw-r--r--NEWS962
1 files changed, 962 insertions, 0 deletions
diff --git a/NEWS b/NEWS
new file mode 100644
index 0000000..c1565b7
--- /dev/null
+++ b/NEWS
@@ -0,0 +1,962 @@
+smartmontools NEWS
+------------------
+$Id: NEWS 5530 2023-08-01 11:00:21Z chrfranke $
+
+The most up-to-date version of this file is:
+https://www.smartmontools.org/browser/trunk/smartmontools/NEWS
+
+Date 2023-08-01
+Summary: smartmontools release 7.4
+-----------------------------------------------------------
+- The docker image used for CI and release builds is now based on
+ Debian 12 instead of Ubuntu 18.04.
+- macOS: CI and release builds are now generated for the x86_64 and arm64
+ targets. 32 bit platforms will require to be compiled from the source.
+- smartctl '-t short', '-t long' and '-X': NVMe support.
+- smartctl '-l selftest': NVMe support.
+- smartctl '-l farm': Prints Seagate's vendor-specific Field Access
+ Reliability Metrics (FARM) log for ATA and SCSI drives.
+- smartctl '-l error': Now also prints an error message for each entry
+ of NVMe error information log.
+- smartctl '-l genstats': Prints SCSI General statistics and performance
+ log page.
+- smartctl '-i' and '--identify': ACS-4/5/6 enhancements.
+- smartctl '-c': Added NVMe 2.0 capability flags.
+- smartctl '-g security': Added 'ata_security.master_password_id'
+ to JSON output. Plaintext output shows Master Password ID if set
+ to a non-default value.
+- smartctl '-q noserial': Now also suppresses the output of NVMe Namespace
+ IEEE EUI-64.
+- smartctl '-j': '-l error -l selftest' JSON output for NVMe devices.
+- smartctl '-j': Avoid invalid UTF-8 sequences in JSON/YAML strings.
+- smartctl '-j': Fixed a bogus exception during SCSI JSON output.
+- smartctl '-j': Renamed JSON element 'scsi_temperature' back to
+ 'temperature' (regression).
+- smartctl '-a': Now suggests '-x' for ATA devices because '-a' only
+ provides legacy SMART information.
+- smartd: No longer issues LOG_CRIT warnings if new entries of NVMe error
+ information log do not indicate device problems.
+- smartd: Now detects accidental use of smartd_warning script as
+ '-M exec' parameter.
+- smartd: No longer writes the 'Copyright...' line to syslog.
+- smartd.conf '-M always': Sends reminder emails without any delay.
+- smartd.conf '-M diminishing': Limited email delay to 32 days.
+- ATA: Fixed decoding of extended self-test log on big endian hosts.
+- ATA: Enhanced LBA range for device types '-d jmb39x-q,...' and
+ '-d jms56x,...' from 33-62 to 1-255.
+- ATA: Device type '-d intelliprop,N' now fails with a deprecation message.
+ Added '-d intelliprop,N,force' flag to use it anyway.
+- ATA/USB: Device type '-d usbasm1352r,N' for ASMedia ASM1352R USB to SATA
+ RAID bridges
+- SCSI: Fixed possible corruption issue with the Error Counter and
+ Non medium Error log pages.
+- SCSI: Added more "Informational Exceptions" strings.
+- SCSI: Added initial support for REPORT SUPPORTED OPERATION command.
+- SCSI: Initial rework of SCSI debug output.
+- NVMe: Added error messages for NVMe status values.
+- NVMe: Fixed crash after read of error information log on big endian hosts.
+- HDD, SSD and USB additions to drive database.
+- update-smart-drivedb: Fixed syntax for 'sed' versions which require
+ ';' before '}' or do not support ';' at all.
+- update-smart-drivedb: Replaced a usually not executed bashism.
+- configure: Default for '--with-nvme-devicescan' is now 'yes' also on
+ Darwin and FreeBSD. It is still 'no' on NetBSD only.
+- configure: Defines '_FORTIFY_SOURCE=3' if supported and not predefined.
+- configure: No longer fails if libsystemd-dev is installed and
+ 'LDFLAGS=-static' is used.
+- Compile fix for systems without legacy 'getdtablesize()'.
+- Pre-releases from SVN snapshots now show "pre-VERSION" in version
+ information and 'smartctl.pre_release=true' in JSON output.
+- Linux: Device type '-d sssraid' for 3SNIC RAID controllers.
+- Linux: Device type '-d marvell' now fails with a deprecation message.
+ Added '-d marvell,force' flag to use it anyway.
+- Linux: The generic SCSI code now defaults to SG_IO_V3 and does no
+ longer fall back to the deprecated SCSI_IOCTL_SEND_COMMAND
+ (but this ioctl is still used for '-d 3ware' and '-d marvell,force').
+- Linux smartd: Now prevents systemd unit startup timeout when many
+ devices are registered and then initially checked.
+- Linux smartd: Systemd no longer reports a service failure if no device
+ is present and a '-q *nodev0*' option is used.
+- Solaris SPARC: Dropped legacy ATA support. Dropped configure option
+ '--with-solaris-sparc-ata'.
+- Windows: IOCTL_STORAGE_PROTOCOL_COMMAND variant for NVMe self-tests.
+- Windows: Installer now defaults to 64-bit executables.
+- Windows: No longer prints bogus 'Local Time' if enhanced TZ syntax is used.
+- Windows: Workaround to keep backward compatibility with old versions
+ of Windows if some versions of MinGW-w64 are used.
+
+Date 2022-02-28
+Summary: smartmontools release 7.3
+-----------------------------------------------------------
+- smartctl '-j': Many additions to the JSON output for SCSI/SAS devices.
+- smartctl '-j': JSON output always includes timestamp, regardless of '-i'.
+- smartctl '-i' and '--identify': ATA ACS-5 enhancements.
+- smartctl '-l defects': additionally works for SCSI Pending Defects log
+ subpage.
+- smartctl '-l envrep': Prints SCSI Environmental Reporting log subpage.
+- smartctl '-l scterc[,R,W],p': Gets/sets the persistent power-on values.
+- smartctl '-l scterc,reset': Restores to manufacturer's default values.
+- smartctl '-l tapedevstat': Prints SCSI Tape Device Statistics log page.
+- smartctl '-l tapealert': Prints SCSI Tape Alert log page.
+- smartctl '-l zdevstat': Prints SCSI Zoned Block Device Statistics log
+ subpage.
+- smartctl '-H': No longer checks and clears the SCSI Tape Alert log page
+ unless the option is given twice.
+- smartctl '-H': No longer sets bit 2 of exit status if ATA attributes are
+ available.
+- smartctl '-H': Checks new NVME 1.4 status bit.
+- smartctl '-n POWERMODE': ATA: Optionally exits immediately if unsupported.
+- smartctl: Support for Zoned block device characteristics and statistics.
+- smartctl: Various fixes related to SCSI supported log pages and subpages.
+- smartd: Fixed code execution vulnerability in conjunction with
+ GNU mailutils < 3.13.
+- smartd '-u USER[:GROUP]': Runs the warning script as a non-privileged user.
+- smartd '--capabilities': No longer suppresses mail notification.
+- smartd '--capabilities=mail': Adds capabilities required for exim MTA.
+- smartd '-q *nodev0*': Three new options to change the exit status to 0 if
+ there are no devices to monitor.
+- smartd '-s' and '-A': Allows one to disable preconfigured files with '-'.
+- smartd: Fixed handling of multiple email addresses in conjunction with
+ plugin scripts. Added new environment variable SMARTD_ADDRESS_ORIG.
+- smartd: No longer writes 'smartd -D' output to syslog on syntax error.
+- smartd.conf '-c i=N': Allows one to specify device specific check intervals.
+- SCSI: Retry on UNIT ATTENTION when fetching capacity.
+- NVMe/USB: Device type '-d sntasmedia' for ASMedia ASM2362 USB to
+ NVMe bridges.
+- VERSION information in drive database files of all branches.
+- smartctl and smartd print drive database VERSION information.
+- HDD, SSD and USB additions to drive database.
+- update-smart-drivedb: Now checks VERSION information to prevent downgrades.
+- update-smart-drivedb '--force': Overrides the VERSION check.
+- update-smart-drivedb '--file' and '--url': Updates from local files or
+ other URLs.
+- update-smart-drivedb '-q': Suppresses info messages.
+- update-smart-drivedb: Added long option variants for all short options.
+- update-smart-drivedb: Prevents dangling gpg-agents and temp directories.
+- update-smart-drivedb '--install': Installs runtime drivedb.h from location
+ specified by ...
+- configure '--with-drivedbinstdir: drivedb.h package install location.
+- configure: SOURCE_DATE_EPOCH prevents inclusion of configure arguments
+ in executables.
+- configure: Check for '-fstack-protector' now includes the required libs.
+- Dropped restriction to C++98, a C++11 compiler is now required.
+- Linux: Device scan range enhanced to '/dev/sdzz'.
+- Linux: Fixed access to '-d aacraid' and '-d megaraid' devices from smartd
+ if '--capabilities' is used.
+- Linux: '-d cciss,N' is no longer required for non-RAID hpsa devices.
+- Darwin: smartctl '-s apm,N' is now supported.
+- OpenBSD: Fixed too short command timeouts.
+- OpenBSD: Fixed device name used for autodetection.
+- OpenBSD: Fixed SAT autodetection of sd* devices.
+- FreeBSD: Added direct access ('-d megaraid,N') and scanning for LSI RAID on
+ 'mfi' and 'mrsas' controllers.
+- Windows: smartd '-u restricted': Runs the warning script with a restricted
+ access token.
+- Windows: New script 'update-smartd-drivedb.ps1' provides gpg verification
+ and replaces 'update-smartd-drivedb.exe'.
+- Windows: Disabled '-d aacraid' support due to unresolved bugs.
+ Added '-d accraid,...,force' flag to try anyway.
+
+Date 2020-12-30
+Summary: smartmontools release 7.2
+-----------------------------------------------------------
+- smartctl: New option '--json=y[c]' selects YAML output.
+- smartctl '-i': Prints ATA TRIM and Zoned Device capabilities.
+- smartctl '-j': Fixed 'scsi_grown_defect_list' value.
+- smartctl '-a': Prints SCSI 'Accumulated power on time'.
+- smartctl '-n POWERMODE': SCSI support.
+- smartctl '-s standby,now' and '-s standby,off': SCSI support.
+- smartctl '-c': NVMe 1.4 additions.
+- smartd: Support for staggered self-tests.
+- smartd: No longer writes attribute log if no attributes were read
+ due to standby mode or other error.
+- smartd: Now resolves symlinks before device names are checked for
+ duplicates.
+- smartd: Fixed SMARTD_DEVICETYPE environment variable if DEVICESCAN is
+ used without '-d TYPE'.
+- ATA: Device type '-d jmb39x-q,N' for JMB39x protocol variant used by
+ some QNAP NAS devices.
+- ATA: Device type '-d jms56x,N' for JMS562 USB to SATA RAID bridges.
+- SCSI: Improved heuristics for log subpages of new and very old disks.
+- NVMe: Log transfer size limited to avoid device or kernel crashes.
+- NVMe/USB: Device type '-d sntrealtek' for Realtek RTL9210 USB to
+ NVMe bridges.
+- update-smart-drivedb: New option '--branch X.Y'.
+- HDD, SSD and USB additions to drive database.
+- Dropped support for pre-C99 snprintf().
+- configure: Dropped option '--without-working-snprintf'.
+- configure: Fixed '-fstack-protector*' detection.
+- Linux: Various fixes of smartd.service file.
+- Darwin: NVMe log support.
+- FreeBSD: Device scan does no longer include T_ENCLOSURE devices.
+- NetBSD: Fixed timeout handling.
+- NetBSD big endian: Fixed ATA register handling.
+- OpenBSD: Fixed timeout handling.
+- Windows: Dropped backward compatibility fixes for very old compilers.
+
+Date 2019-12-30
+Summary: smartmontools release 7.1
+-----------------------------------------------------------
+- smartctl: Fixed bogus exception on unknown form factor value (regression).
+- smartctl '--json=cg': Suppresses extra spaces also in 'g' format.
+- smartctl '-i': ATA ACS-4 and ACS-5 enhancements.
+- smartd: No longer truncates very long device names in warning emails.
+- smartd: No longer skips scheduled tests if system clock has been adjusted
+ to the past.
+- smartd '-A': Attribute logs now use local time instead of UTC.
+- ATA: Device type '-d jmb39x,N' for drives behind JMicron JMB39x RAID port
+ multipliers.
+- SCSI: Workaround for incomplete Log subpages response from some SAS SSDs.
+- HDD, SSD and USB additions to drive database.
+- Autodetection of '-d sntjmicron' type for JMicron USB to NVMe bridges.
+- configure: Defines '_FORTIFY_SOURCE=2' if supported and not defined.
+- Linux/FreeBSD: Fixed segfault on CCISS transfer sizes > 512 bytes.
+- Linux: Fixed smartd.service 'Type' if libsystemd-dev is not available.
+- Linux: Fixed '/dev/megaraid_sas_ioctl_node' fd leak.
+- Linux: Fixed GPL licensing problem of 'linux_nvme_ioctl.h'.
+- FreeBSD update-smart-drivedb: Now uses 'fetch' as default download tool.
+- FreeBSD big endian: Fixed NVMe access.
+- FreeBSD: Compile fix for FreeBSD 12.
+- NetBSD: Fixed device scan crash on empty name list.
+- NetBSD: Fixed memory leak in device scan.
+- Windows: Fixed log page access via Windows 10 NVMe driver for NVMe 1.2.1+.
+- Windows: Allow drive letters as device names for Windows 10 NVMe driver.
+- Windows: Workround to allow CSMI access to devices behind AMD RAID drivers.
+- Windows: Fixed MinGW options to add relocation info if ASLR is enabled.
+- Windows wtssendmsg: No longer writes '\n' line endings to event log.
+- Windows wtssendmsg: New options '-t' and '-w'.
+
+Date 2018-12-30
+Summary: smartmontools release 7.0
+-----------------------------------------------------------
+- smartctl: New options '-j' and '--json[=giosu]' to enable experimental
+ JSON output mode. Also supports an alternative flat format suitable
+ for grep ('--json=g').
+- smartctl '-l devstat': Fix for logs with 256 sectors.
+- smartctl '-l error': Prints SCSI Pending Defects log page if supported.
+- smartctl '-H': Prints SCSI Format Status log page if supported.
+- smartctl '-x': Now includes '-l defects'.
+- NVMe/USB: Device type '-d sntjmicron' for NVMe drives behind JMicron USB
+ to NVMe bridges.
+- NVMe: SMART/Health Information and Error Information are always read with
+ broadcast NSID.
+- SCSI: Various improvements for the decoding of log pages.
+- SCSI: Improved handling of READ CAPACITY command.
+- SCSI: Support for SAS host managed drives.
+- New option '-d scsi+TYPE' to disable SAT auto detection for 'aacraid'
+ and 'cciss'.
+- update-smart-drivedb: New option '-u github'.
+- update-smart-drivedb: New signing key.
+- configure: New options '--with-cxx11-regex' and '--with-libsystemd'.
+- configure: Default for '--with-nvme-devicescan' is now 'yes' on Linux
+ and Windows.
+- configure: Default for '--with-scriptpath' now includes '/usr/local/bin'.
+- configure: Options '-with-initscriptdir=[auto|yes]' are no longer
+ supported.
+- Reworked handling of unaligned LE and BE integers.
+- Dropped various backward compatibility fixes for very old compilers.
+- Replaced GPL header with 'SPDX-License-Identifier' in all source files.
+- HDD, SSD and USB additions to drive database.
+- Always use '-d sat' for USB vendor IDs with known SAT support.
+- Linux: Device scan with '-d by-id' scans '/dev/disk/by-id/*' symlinks.
+- Linux: Dropped device scan support for devfs.
+- Linux: Fixed device scan with multiple '-d TYPE' options.
+- Linux: Fixed device scan crash on missing '/proc/devices'.
+- Linux: USB ID detection also for '/dev/sgN'.
+- Linux: Compile fix for systems with musl libc.
+- Linux smartd: Could now run as systemd service with 'Type=notify' set.
+- FreeBSD: NVMe device scanning.
+- FreeBSD: Various compile fixes.
+- NetBSD: Fixed regression in name based device type detection.
+- NetBSD big endian: Fixed regression in ATA code.
+- NetBSD big endian: Fixed byte ordering of ATA IDENTIFY data from USB/SAT
+ drives.
+- Windows: Improved search for actual CSMI port number.
+- Windows: Installer includes VERSIONINFO resource.
+
+Date 2017-11-05
+Summary: smartmontools release 6.6
+-----------------------------------------------------------
+- smartctl '-i' and '--identify': ATA ACS-4 and SATA 3.3 enhancements.
+- smartctl: Control ATA write cache through SCT Feature Control
+ with '-s wcache-sct,ata|on|off[,p]' and '-g wcache-sct'.
+- smartctl: Print ATA Pending Defects log with '-l defects'.
+- smartctl '-s wcreorder,on|off': New persistent flag ',p'.
+- smartctl '-s standby': Prevent temporary drive spinup.
+- smartctl '-n POWERMODE': New parameter to set exit status.
+- smartctl '-g security': ATA Security Level check fixed.
+- smartctl '-l scttemp*': Print minimum supported ERC Time Limit.
+- smartctl '-q noserial': Now also suppresses "SAS address" output.
+- smartctl '-i': Print IEEE EUI-64 of NVMe namespace.
+- smartctl '-c': Print NVMe 1.3 feature flags.
+- smartctl '-A': Print NVMe 1.3 thermal temperature transition
+ statistic.
+- smartctl '-g/s dsn': Get/set ATA DSN.
+- smartd: Uses also device identify information to detect for duplicate
+ devices.
+- smartd '-e dsn' directive: Set ATA DSN.
+- smartd: Improved SCSI/SAS temperature logging.
+- smartd: Silence emails and log messages on open errors of
+ '-d removable' devices.
+- smartd: Exit on device open error unless '-q never' or '-d removable'
+ is specified (regression).
+- update-smart-drivedb: Now authenticates downloaded file with GnuPG.
+- update-smart-drivedb: New options '--trunk', '--no-verify' and
+ '--export-key'.
+- Device type '-d intelliprop,N' for IntelliProp controllers.
+- SCSI: Default timeout increased to 1 minute.
+- configure: New options '--with-gnupg', '--with-scriptpath' and
+ '--with-update-smart-drivedb=X.Y'
+- configure: Checks for C++11 support option and requires
+ '--with[out]-cxx11-option' if option unknown or no C++11 support.
+- HDD, SSD and USB additions to drive database.
+- New smartmontools-* mailing list addresses.
+- Man page formatting reworked.
+- Linux: Uses SG_IO V4 API if supported.
+- Linux: Devices behind hpsa driver are no longer detected as regular
+ SCSI devices.
+- Darwin: Initial NVMe support based on undocumented API.
+- FreeBSD: Fix panic on INVARIANTS enabled kernel.
+- FreeBSD: Improve ATA SMART STATUS check for legacy controllers.
+- FreeBSD: Compile fix for FreeBSD-11 and newer.
+- NetBSD: NVMe support.
+- NetBSD: Full 28-bit ATA support.
+- NetBSD: Compile fix.
+- NetBSD: Use a raw disk device file.
+- OpenBSD: Compile fix.
+- OS/2: Support for the OS2AHCI driver, updating source code,
+ adding autoscan support, adding self-test support.
+- Windows: Support for Windows 10 NVMe driver (stornvme.sys).
+- Windows: Fix CSMI access for IRST driver 15.2.
+- Windows smartd: Ability to run PowerShell scripts with '-M exec'.
+- Windows smartd: New PowerShell script to send smartd warning emails
+ without external tools.
+- Windows package: Now provides PDF man pages.
+
+Date 2016-05-07
+Summary: smartmontools release 6.5
+-----------------------------------------------------------
+- Experimental support for NVMe devices on FreeBSD, Linux and Windows.
+- smartctl '-i', '-c', '-H' and '-l error': NVMe support.
+- smartctl '-l nvmelog': New option for NVMe.
+- smartd.conf '-H', '-l error' and '-W': NVMe support.
+- Optional NVMe device scanning support on Linux and Windows.
+- configure option '--with-nvme-devicescan' to include NVMe in
+ default device scanning result.
+- Device scanning now allows one to specify multiple '-d TYPE' options.
+- ATA: Added new POWER MODE values introduced in ATA ACS-2.
+- ATA: SCT commands are no longer issued if ATA Security is locked.
+- SCSI: LB provisioning improvements.
+- SCSI: Fixed GLTSD bit set/cleared info messages.
+- SCSI: Solid State media log page is no longer checked for tapes.
+- SCSI: Improved handling when no tape cartridge in drive.
+- SCSI: Workaround for buggy Seagate firmware.
+- SAT: Improved heuristics to detect bogus sense data from SAT layer.
+- smartd: Fixed crash on missing argument to '-s' directive.
+- update-smart-drivedb: Now uses HTTPS for download by default.
+- update-smart-drivedb: New options to select URL and download tool.
+- update-smart-drivedb: New download tool 'svn'.
+- configure option '--without-update-smart-drivedb' to disable
+ update-smart-drivedb script.
+- configure options '--disable-drivedb', '--enable-savestates',
+ '--enable-attributelog' and '--with-docdir' are no longer supported.
+- autoconf < 2.60 and automake < 1.10 are no longer supported.
+- Drive database file now also includes the DEFAULT setting
+ for each attribute.
+- HDD, SSD and USB additions to drive database.
+- Darwin: New support files for package installer.
+ New makefile target 'install-darwin' builds DMG image.
+- Solaris: Auto detection of SATA devices behind SAT layer.
+- Solaris SPARC: Legacy ATA support disabled by default.
+ New configure option '--with-solaris-sparc-ata' enables it.
+ File os_solaris_ata.s is no longer included in source tarball.
+- Windows: Auto detection of USB devices specified by drive letter.
+- Windows: Device scanning does no longer ignore unknown USB devices.
+- Windows: Prevent drive spin up by '-n standby' check.
+- Windows: New application manifests indicating Win 10 support.
+- Windows smartd: '-m [sys]msgbox' is no longer supported.
+- Windows installer: Defaults to 64-bit version on 64-bit Windows.
+- Various code changes suggested by Clang Static Analyser and Cppcheck.
+
+Date 2015-06-04
+Summary: smartmontools release 6.4
+-----------------------------------------------------------
+- Device type '-d usbprolific' for Prolific PL2571/277x USB bridges.
+- SAT: Support for ATA registers returned in fixed format sense data.
+- smartctl '-i' and '--identify': ATA ACS-4 and SATA 3.2 enhancements.
+- smartctl '-l xerror': Support for logs with more than 255 pages.
+- smartctl '-l devstat': Prints ACS-3 DSN flags.
+- smartctl '-l devstat': Read via SMART command if GP log is not
+ available.
+- smartctl '-l scttempsts': Prints SCT SMART STATUS (ACS-4) and
+ vendor specific SCT bytes.
+- configure option '--with-systemdenvfile=auto' as new default.
+- configure options '--disable-drivedb', '--enable-savestates'
+ and '--enable-attributelog' are deprecated.
+- Corresponding '--with-*' options are enhanced accordingly.
+- Configure option '--with-docdir' is deprecated.
+- autoconf < 2.60 and automake < 1.10 are deprecated.
+ (all of the above still work but a warning is printed if used)
+- HDD, SSD and USB additions to drive database.
+- Linux: AACRAID fixes, SMART STATUS should work now.
+- Linux: '/dev/megaraid_sas_ioctl_node' fd leak fix.
+- Darwin: '-S' command implemented, '-l devstat' should work now.
+- Cygwin: Compile fix.
+- Windows: Device type '-d aacraid' for AACRAID controllers.
+- Windows: SAT autodetection based on IOCTL_STORAGE_QUERY_PROPERTY.
+- Windows installer: Fix possible loss of user PATH environment variable.
+
+Date 2014-07-26
+Summary: smartmontools release 6.3
+-----------------------------------------------------------
+- smartctl: Fixed bogus error messages from '-g/-s wcreorder'.
+- smartctl prints ATA form factor.
+- SCSI: Improved support of modern disks (SAS SSDs).
+- SCSI: Fixed sense data noise from old disks.
+- update-smart-drivedb man page.
+- configure option '--with-smartdscriptdir'.
+- configure option '--with-smartdplugindir'.
+- configure option '--with-systemdenvfile'.
+- configure option '--with-working-snprintf'.
+- Removed build time stamps to support reproducible builds.
+- Compile fixes for C++11.
+- HDD, SSD and USB additions to drive database.
+- Linux: Support for controllers behind AACRAID driver.
+- Linux: Fixed DEVICESCAN max path count.
+- FreeBSD: Fixed possible crash caused by wrong SCSI error handling.
+- FreeBSD: Compile fix for kFreeBSD.
+- Windows: Reworked CSMI port scanning.
+- QNX: Compile fix.
+
+Date 2013-07-26
+Summary: smartmontools release 6.2
+-----------------------------------------------------------
+- smartctl: Added ATA write cache reordering control using
+ '-g wcreorder' and '-s wcreorder,[on|off]' options.
+- update-smart-drivedb: Updated for new SVN repository.
+- HDD, SSD and USB additions to drive database.
+- Areca RAID support: Fixed possible segfault on empty port.
+- HPT RAID support: Maximum disk number increased to 128.
+- Linux: RHEL 9 compile fixes.
+- FreeBSD: Device scanning now skips port multipliers.
+- Cygwin: 64-bit compile fixes.
+- Windows: Fixed bogus temp file name in smartd_warning.cmd
+ (already included in smartmontools-6.1-2.win32-setup.exe).
+- Windows: smartd service is no longer installed as interactive.
+
+Date 2013-03-16
+Summary: smartmontools release 6.1
+-----------------------------------------------------------
+- smartctl '-l directory': improved output format.
+- smartctl: Fix parsing of '-l select,cont+SIZE' option.
+- smartctl prints ATA Additional Product Id (OEM Id).
+- smartctl '-s/-g wcache' for SCSI devices to control write cache.
+- smartctl '-s/-g rcache' for SCSI devices to control read cache.
+- smartctl prints more info for SCSI devices: media rotation rate,
+ form factor, physical block size, lowest LBA alignment,
+ logical block provisioning, disk protection type
+ and selftest progress status.
+- smartctl '--identify' updated for latest ATA ACS-3 spec.
+- smartd runs /etc/smartd_warning.sh to generate warning emails
+ (Windows: smartd_warning.cmd).
+- smartd '-w PATH' option to specify this executable.
+- smartd '-d ignore' directive.
+- smartd DEVICESCAN ignores devices already specified.
+- smartd: added support for state persistence ('-s') and attribute logging
+ ('-A') for SCSI devices.
+- smartd '-W' directive uses ATA attribute 190 if 194 is missing.
+- Support of larger SCSI defect lists via READ DEFECT(12).
+- Device type '-d usbjmicron,p' for Prolific USB bridges.
+- Many HDD, SSD and USB additions to drive database.
+- Linux: Support for SAS disks behind Areca controllers.
+- Linux: Improved support for SATA disks on LSI/Megaraid controllers
+- Linux: disks on MegaRaid controllers are automatically scanned
+- FreeBSD: Support for SAS disks behind Areca controllers.
+- FreeBSD: Enhanced ATA command support for 3ware.
+- FreeBSD: Support for 3ware 9750 (/dev/twsX).
+- FreeBSD: Fixed support for 48-bit ATA commands on legacy controllers
+ with ATACAM driver.
+- FreeBSD: Improved support for SAS/SCSI disks on LSI/Megaraid controllers.
+- Windows: smartd.conf '-M exec' supports path names with spaces.
+- Windows: Tool wtssendmsg.exe to handle smartd.conf '-m console'.
+- Windows: DEVICESCAN now supports up to 128 drives.
+- Windows: smartctl.exe and smartd.exe include VERSIONINFO resource.
+- Windows: smartd.exe includes MESSAGETABLE resource.
+- Windows: syslogevt.exe is no longer provided.
+
+Date 2012-10-10
+Summary: smartmontools release 6.0
+-----------------------------------------------------------
+- option/directive '-F nologdir' and '-F xerrorlba'.
+- smartctl '--identify' option.
+- smartctl prints nominal media rotation rate (ATA).
+- smartctl prints SATA version and speed.
+- smartctl '-l sataphy' works for CD/DVD drives also.
+- smartctl '-x' includes ATA Device Statistics.
+- smartd warning emails include device identify info.
+- smartd '-d' output is flushed to support redirection.
+- HDD, SSD and USB additions to drive database.
+- Windows smartd: smartd.conf directives '-m console',
+ '-m active', '-m connected'.
+- Windows: Support for SAS disks behind Areca controllers.
+- Windows: Win9x/ME and NT4 are no longer supported.
+
+Date 2012-06-30
+Summary: smartmontools release 5.43
+-----------------------------------------------------------
+- smartctl options '-g, --get' and '-s, --set' to get/set
+ various ATA settings: AAM, APM, Read look-ahead, Write
+ cache, Security (freeze), Standby mode/timer.
+- smartd directive '-e' to set (most of) the above settings
+ on startup.
+- smartctl options '-f hex' and '-f hex,[id|val]'.
+- smartctl does not start ATA self-test if another test is
+ already running. Override with new option '-t force'.
+- smartctl supports extended self-test polling times
+ greater than 255 minutes.
+- Controller-independent SAT detection: '-d sat,auto[+TYPE]'.
+- smartd.conf DEFAULT directive.
+- Many HDD, SSD and USB additions to drive database.
+- Linux and FreeBSD: Support for SATA disks behind Areca SAS
+ RAID controllers and HP Smart Array controllers.
+- Windows: Support for SATA disks behind Areca controllers.
+- Windows smartd: directives '-l offlinests,ns' and
+ '-l selfteststs,ns'.
+- Windows installer: Combined 32-/64-bit support.
+- FreeBSD: fixed crash on SCSI devices with FreeBSD9-RC1
+
+Date 2011-10-20
+Summary: smartmontools release 5.42
+-----------------------------------------------------------
+- smartctl option '-l devstat' (Device Statistics).
+- smartctl option '-l ssd' (SSD endurance indicator).
+- smartd logs identify information of each SCSI/SAS device.
+- smartd resends warning emails if problem reappears.
+- smartd directives '-l offlinests' and '-l selfteststs'.
+- Many HDD, SSD and USB additions to drive database.
+- Platform-specific man pages.
+- smartd.8 man page no longer includes smartd.conf.5.
+- FreeBSD: Compilation fixes.
+- FreeBSD: Support for Areca controllers.
+- FreeBSD: Fix '-l scterc' support.
+- FreeBSD: Support for 48-bit ATA commands.
+- Linux: Support for Areca controllers enhanced.
+- Windows installer: UAC support.
+- Windows: update-smart-drivedb /S(ilent) option.
+- Windows: improved USB ID detection.
+
+Date 2011-06-09
+Summary: smartmontools release 5.41
+-----------------------------------------------------------
+- Failed self-tests outdated by a newer successful extended
+ self-test are no longer reported as errors.
+- Support for ATA Long Logical/Physical Sectors (LLS/LPS).
+- 'smartctl --scan-open' can create a draft smartd.conf.
+- smartctl prints World Wide Name (WWN) of ATA device.
+- smartctl option '-f brief' to select new attribute output
+ format which includes more flags and fits in 80 columns.
+- smartd logs identify information and WWN of each ATA device.
+- smartd logs warning from drive database if present.
+- smartd logs changes of offline data collection status.
+- smartd directive '-l scterc,READTIME,WRITETIME'.
+- smartd preserves last scheduled selective self-tests span.
+- 'smartd.service' file for systemd.
+- configure option '--with-systemdsystemunitdir'
+- configure option '--with-exampledir'.
+- configure searches for init.d or rc.d directory.
+- 'make install' does no longer overwrite an existing
+ smartd.conf file.
+- 'update-smart-drivedb' does no longer require GNU sed.
+- Many HDD, SSD and USB additions to drive database.
+- Linux USB autodetection: Enable '-d sat,16' for newer kernels.
+- Linux megaraid: Fix segfault on non-data SCSI commands.
+- Linux megaraid: Fix pass-through of non-data ATA commands.
+- FreeBSD: Use 'fetch' in 'update-smart-drivedb'.
+- OpenBSD: Use 'ftp' in 'update-smart-drivedb'.
+- OpenBSD: Workaround for shell bug.
+- OpenBSD: Fix DEVICESCAN for OpenBSD >= 4.8.
+- Windows: Experimental support for Intel ICHxR RAID.
+- Windows: DEVICESCAN includes USB devices.
+- Windows: Faster USB ID detection.
+- Windows: update-smart-drivedb tool.
+- Windows installer: Option '/SO component,...'.
+- Windows: Fix smartd warning email truncation on Win7.
+- Windows installer: Fix shortcut removal on Vista/Win7.
+- Windows: Add missing quotes in smartctl-run.bat and
+ smartd-run.bat
+
+Date 2010-10-16
+Summary: smartmontools release 5.40
+-----------------------------------------------------------
+- Other config entries may precede smartd DEVICESCAN.
+- Option '-v' allows one to specify byte order of attribute raw value
+- configure: New default value for '--with-docdir'.
+- configure: '--enable-drivedb' is now the default.
+- Improved support for Intel SSDs.
+- Improved support for SandForce based SSDs.
+- Drive database is in a separate source file 'drivedb.h'
+ which can be downloaded from SVN.
+- USB ID info is now included in 'drivedb.h'.
+- Many additions to drive database.
+- New script 'update-smart-drivedb'.
+- smartd libcap-ng support, option '-C, --capabilities'.
+- smartd directive '-l xerror' to check Extended Comprehensive
+ SMART Error Log.
+- smartctl option '-l scterc[,...]' to get/set the
+ SCT Error Recovery Control time limit.
+- smartctl option '-t vendor,N'.
+- smartctl options '--scan, --scan-open'.
+- Linux: Add '/dev/sd[a-c][a-z]' to smartd DEVICESCAN.
+- Linux: Support SATA drives on LSI 3ware 9750 controllers.
+- Windows: Read 'drivedb.h' and 'smartd.conf' from exe directory.
+- Windows: Support for 64-bit executables.
+- Windows: Support for cross compilation on Linux.
+- Fix regression in smartctl option '-t select,M-N'.
+- Fix SCT temperature table commands on big endian CPUs.
+- Fix regression in smartd SMARTD_DEVICE and SMARTD_DEVICETYPE
+ environment variables.
+
+Date 2010-01-28
+Summary: smartmontools release 5.39.1
+-----------------------------------------------------------
+- Fix crash on kFreeBSD.
+- 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
+Summary: smartmontools release 5.39 (UNSTABLE/EXPERIMENTAL)
+-----------------------------------------------------------
+- Sourcecode repository moved from CVS to SVN
+- Support for USB devices with Cypress, JMicron and Sunplus USB bridges
+- USB device type autodetection for some devices on Linux, Windows and FreeBSD
+ (http://www.smartmontools.org/wiki/Supported_USB-Devices)
+- Support for Areca controllers on Linux
+- Support for MegaRAID controllers on Linux
+- Support for HighPoint RocketRAID controllers on FreeBSD
+- Support RAID controllers using /dev/pass devices on FreeBSD
+- Support CHECK_POWER_MODE and WRITE_LOG on FreeBSD
+- Support for up to 128 devices on 3ware controllers
+- smartctl option '-l xerror' to print ATA SMART Extended Comprehensive
+ Error Log
+- smartctl option '-l xselftest' to print ATA SMART Extended Self-test Log
+- smartctl option '-l sataphy' to print SATA Phy Event Counters
+- smartctl option '-l sasphy' to print SAS device phy information
+- smartctl options '-l gplog,...' and '-l smartlog,...' to print any log page
+- smartctl option '-x' to print all extended info if available
+- smartctl prints SCSI load/unload cycle counts
+- Improve display of huge raw values of some SMART attributes
+- Option '-d sat+TYPE' to use SAT with controllers which require '-d TYPE'
+- Option '-v ID,RAW_FORMAT,ATTR_NAME' to add new vendor specific attributes
+- Support for SSD drives using 64-bit raw attributes
+- Many additions to drive database
+- New simplified syntax for drive database
+- Option '-B FILE' to read drive database from a file
+- Configure option to add drive database file to distribution
+- smartd can now handle attributes 197 and 198 with increasing raw values
+- smartd logs changes of self-test execution status
+- smartd directive '-n powermode,N' to limit the number of skipped checks
+- smartd flag '!' for '-r' and '-R' directives to log changes as critical
+- smartd supports scheduled Selective Self-Tests
+- Self-tests scheduled during system downtime or disk standby are run after
+ next startup
+- smartd option '-s PREFIX' to store smartd internal state until next startup
+- smartd option '-A PREFIX' to log attributes at each check cycle
+- Configure options to enable the above by default
+- Change to an object oriented interface to access ATA and SCSI devices
+- Linux, Win32 and FreeBSD modules migrated to new interface
+- Rework of smartd data structures
+- Checkin date and SVN revision and optional BUILD_INFO printed in version info
+- Better support for GSmartControl on Windows
+- SELinux fixes to 3ware device node creation
+- Fix CCISS file descriptor leak on FreeBSD
+- Compile fixes for Solaris and FreeBSD
+- Use getaddrinfo() instead of gethostbyname() to support IPv6
+- C++ Support for QNX Target, already tested for QNX 6.3.2 on x86 and
+ armle target
+- Additional support for Samsung MLC flash drives
+- New device type detection algorithm on FreeBSD, not based on filename
+- Support for the adaX (ATA on CAM bus) devices on FreeBSD 8.0 and higher
+
+Date 2008-03-10
+Summary: smartmontools release 5.38 (STABLE)
+--------------------------------------------
+This is a stable release of smartmontools. In addition to changes
+below, it includes:
+ - Libata/Marvell driver devices no longer need explicit '-d' switch
+ - DEVICESCAN automatically detects libata/marvell driver SATA devices
+ - Fixed auto-offline/autosave support in FreeBSD
+ - SAT device type + SCSI generic devices work properly with smartd under Linux
+ - Many additions to drive database
+ - More portable autogen/autoconf/automake script set
+ - Additional Windows IOCTL route to access SMART data
+ - Some ATA-8 updates
+ - Smoother CCISS compilation support in Linux
+ - Dragonfly support
+ - Fixed some ATA identity byte swap problems on big endian CPUs
+ - Added support for the QNX operating system
+ - No-fork option added to smartd
+ - Improved device scanning and drive type recognition in Windows
+ - 3ware support for controllers with more disks (32 max)
+ - Improved Windows installer
+ - Improved SMART Attribute list and descriptions
+ - Fix to smartctl return codes
+ - Fix to scheduled tests on Highpoint RAID controllers
+ - New samsung firmware bug workaround option
+ - Auto-offline and Auto-save fixed in Linux + libata
+ - Solaris: better SCSI support and support for Sun compilers AND gcc
+ - Fixed and improvements to CCISS support
+ - More options for SCSI temperature monitoring and history
+ - Additional command line options for selective self-tests
+ - Compilation fixes for various platforms.
+
+See CHANGELOG for more details, or smartmontools SVN for still further
+details.
+
+Date 2006-12-20
+Summary: smartmontools release 5.37 (UNSTABLE/EXPERIMENTAL)
+-----------------------------------------------------------
+This is an unstable/experimental release of smartmontools.
+It includes:
+
+- Many additions to the table of known drives
+- SAT (SCSI/ATA Translation) support
+- SCSI background scan results log
+- smartd -W directive for temperature tracking and warning
+- smartctl -n option to check power state
+- improved smartd power state logging
+- CCISS support under Linux
+- HighPoint RocketRAID support under Linux
+- 3ware RAID support under Windows
+- SPT interface for SCSI devices under Windows
+- ATA selective self test under Windows XP/2003
+- NSIS installer support for Windows version
+- Started move from C to C++
+- Various other improvements
+
+
+Date 2006-04-12
+Summary: smartmontools release 5.36 (STABLE)
+-----------------------------------------------------------
+This is a stable smartmontools release. The 5.34 version
+described just below was never officially released because
+Bruce Allen decided to wait until Linux support for
+accessing SATA devices through libata was in the official
+kernel.org sources. Changes include:
+
+- Win 2000/XP:ability to cancel drive self-tests
+- Additions to the table of known drives
+- FreeBSD support for 3ware char device interface and
+ multiple 3ware cards
+- Various cygwin improvements for running as service
+- Works 'out of the box' with Linux SATA libata
+- smartd option added to list test schedules
+- smartctl option added to list part of drive database
+- various improvements for SCSI disks and logs
+
+
+Date 2005-04-19
+Summary: smartmontools release 5.34 (STABLE)
+-----------------------------------------------------------
+This is a stable smartmontools release. It includes:
+- OS/2 and eComStation support
+All Platforms:
+ - Printing of drive family info
+ - SCSI disks: output size of grown defect list
+ - Added info about drive family to 'smartctl -i' output.
+ - Added option ',q' for smartd '-n' directive to suppress
+ 'skipping checks' message which may spin up laptop disk.
+ - Added message if smartd '-n' check power mode spins up disk.
+Cygwin and Windows:
+ - Added info about Windows version and service pack to banner line.
+ - Added support for smartd '-n' directive for Win2000/XP.
+ - Added support for READ_LOG for WinNT4 also.
+ - Fixed bug that prevents display of empty logs on Win2000/XP
+ - Fixed use of cached smart enabled state in 'smartctl -i' output.
+Windows:
+ - Fixed bug that prevents running smartd as service on WinNT4.
+
+
+Date 2004-9-5
+Summary: smartmontools release 5.33 (UNSTABLE/EXPERIMENTAL)
+-----------------------------------------------------------
+This is an unstable/experimental release of smartmontools. It includes
+ - support for Darwin/Mac OSX
+ - support for OpenBSD
+ - support for 3ware ATA RAID controllers under FreeBSD
+ - support for 3ware 9500 series SATA RAID controllers under
+ Linux. Use /dev/twa[0-15] devices to access these.
+ - support for 3ware character device interfaces /dev/twe[0-15]
+ under Linux. This allows (for example) Selective Self-tests.
+ - support for Marvell chip-set based SATA controllers under Linux.
+ - smartd mail now works also under Windows (using "Blat" mailer).
+ - smartd can now be run as a Windows service.
+Please report sucess/failure with these items to the
+smartmontools-support mailing list.
+
+
+Date 2004-7-5
+Summary: smartmontools release 5.32 (STABLE)
+-----------------------------------------------------------
+This is an stable release of smartmontools.
+Note added 2004/7/7: users building a Solaris/Intel version of the code should
+modify the 'configure' file, changing "pc-*-solaris*" on line 106
+to read "*-pc-solaris*". Reference:
+http://smartmontools.cvs.sourceforge.net/smartmontools/sm5/configure.in?r1=1.83&r2=1.84
+
+
+Date: 2004-5-4
+Summary: smartmontools release 5.31 (UNSTABLE/EXPERIMENTAL)
+-----------------------------------------------------------
+This is an unstable/experimental release of smartmontools. It includes
+several new features:
+- Windows smartd daemon
+- smartd now monitors current and pending sector counts
+- Support for ATA-7 selective self-test features (Linux/NetBSD only)
+ Please report sucess/failure with this option to the smartmontools-support
+ mailing list.
+
+Date: 2004-3-6
+Summary: smartmontools release 5.30 (STABLE)
+--------------------------------------------
+This is a stable release of smartmontools: the first stable release
+since 5.26.
+- KNOWN BUG (identified/fixed by CF): smartd will segv and crash if
+ the configuration file /etc/smartd.conf contains NO valid entries.
+ This bug was introduced in version 1.259 of smartd.c by BA and
+ is present in smartmontools releases 5.27-5.30 inclusive. This can
+ be fixed by editing line 3165 of smartd.c, and changing:
+ "else if (cfgentries[0]) {"
+ to read:
+ "else if (cfgentries && cfgentries[0]) {"
+
+
+Date: 2004-2-24
+Summary: smartmontools release 5.29 (Experimental, not STABLE)
+--------------------------------------------------------------
+This is another experimental release, to replace the 5.27 release that
+had a damaged configure script. The next stable release will be 5.30
+- This release has SCSI support for NetBSD
+
+
+Date: 2004-2-12
+Summary: smartmontools release 5.27 (Experimental, not STABLE)
+--------------------------------------------------------------
+- WARNING: this release has a broken --prefix=/a/path option to the
+ configure script. The consequence is that smartd will not look for the
+ configuration file (smartd.conf) at the desired location.
+- NetBSD support added
+- A new Directive (-s) for smartd.conf now enables flexible automatic
+ scheduled self-testing for both ATA and SCSI devices.
+- Solaris now has ATA device support (SPARC only)
+- A new Directive (-n) for smartd.conf to avoid spinning up disks
+- Errors when smartd sends mail are now logged to SYSLOG
+- Solaris smartd mail now works correctly (uses mailx not mail)
+
+
+Date: 2003-11-29
+Summary: smartmontools release 5.26
+-----------------------------------
+This is a stable smartmontools release. The only known problem is
+that under Solaris, the email features of smartd do not work 'out of
+the box'. Three workarounds are:
+ [1] use '-M exec mailx' in /etc/smartd.conf
+ [2] in the start script for smartd, put /usr/ucb into PATH before
+ /bin
+ [3] upgrade to release 5.27 or later, or the latest CVS snapshot
+
+
+Date: 2003-11-19
+Summary: smartmontools release 5.25
+-----------------------------------
+This release should not hang when accessing USB devices. It provides
+smartd SCSI self-test log monitoring for self-test errors, and a
+larger table of known ATA drives. DEVICESCAN should work correctly
+even on file systems containing XFS or JFS partitions, and on machines
+that use devfs, even without traditional links.
+
+From this time on, even numbered releases will be 'stable' ones and
+odd numbered releases (like 5.25) will be unstable/testing/development
+releases.
+
+
+Date: 2003-10-30
+Summary: smartmontools release 5.23
+-----------------------------------
+This release has one known problem: DEVICESCAN device scanning does
+not work correctly if the disk with the /dev directory also has XFS
+or JFS file systems on it.
+
+
+Date: 2003-10-28
+Summary: smartmontools release 5.22
+-----------------------------------
+Replaces flawed 5.21 release: the -T verypermissive option had to be
+entered as -T verpermissive. First experimental solaris support (SCSI
+only). This release had a serious flaw: smartd left open file descriptors
+for devices that it couldn't monitor.
+
+
+Date: 2003-10-14
+Summary: smartmontools release 5.21
+-----------------------------------
+Preliminary support for FreeBSD added to smartmontools. For FreeBSD,
+ATA support requires a 5.1-CURRENT kernel while SCSI support should
+work across multiple versions (any that support CAM).
+
+
+Date: 2003-10-04
+Summary: smartmontools release 5.20
+-----------------------------------
+Replaces flawed 5.19 release (which had a zero-length man page
+smartd.conf.5).
+
+
+Date: 2003-10-03
+Summary: smartmontools release 5.19
+-----------------------------------
+This is the first release of smartmontools based on autoconf/automake.
+For this reason, it is a very experimental release. Please let us
+know in particular about documentation errors/omissions, missing or
+unnecessary files, and similar oversights. The major changes are:
+ [1] installation scripts based on autoconfig/automake
+ [2] ./configure [options] lets you set arbitrary paths
+ [3] supports FHS with ./configure --prefix=/usr/local
+ [4] correct paths are inserted into all man pages, binaries, etc.
+ [5] tarballs and RPMs are now GPG-signed
+
+
+Date: 2003-10-02 11:35
+Summary: smartd SEGV
+--------------------
+Some versions of smartd, including smartmontools release 5.1-18, will
+SEGV if the combination of Directives in /etc/smartd.conf contains
+-l error
+AND/OR
+-l selftest
+without any Attribute monitoring Directives. This is fixed in 5.19
+and above.
+
+A good workaround is to add:
+-o on
+OR
+-o off
+to enable or disable automatic offline data collection.
+
+
+Date: 2002-11-17 07:41
+Summary: testunitready bug in smartd
+------------------------------------
+A bug in smartd prevented functioning on scsi devices.
+The bug in question only affects smartd users with scsi devices.
+To see if your version of smartd has the testunitready() bug, do
+smartd -V
+If the version of the module smartd.c in a line like:
+Module: smartd.c revision: 1.66 date: 2002/11/17
+has a revision greater than or equal to 1.30, and less than or
+equal to 1.64, then your version of the code has this problem.
+
+This problem affected releases starting with RELEASE_5_0_16 up to and
+including RELEASE_5_0_43.