From 946c32475d4cf854b50bbeaad355095961ea94f7 Mon Sep 17 00:00:00 2001 From: Daniel Axelrod Date: Apr 27 2019 18:41:15 +0000 Subject: Clean up spec and patches Remove old patches that were not referenced by the specfile. Drop pre script for migrating from unsupported Fedora versions. Replace sed with configure switch; this should be more future-proof. --- diff --git a/smartmontools-5.38-perc.patch b/smartmontools-5.38-perc.patch deleted file mode 100644 index a63c890..0000000 --- a/smartmontools-5.38-perc.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -up smartmontools-5.38/scsiprint.cpp.perc smartmontools-5.38/scsiprint.cpp ---- smartmontools-5.38/scsiprint.cpp.perc 2008-03-04 23:09:47.000000000 +0100 -+++ smartmontools-5.38/scsiprint.cpp 2008-03-27 11:28:20.000000000 +0100 -@@ -1037,6 +1037,9 @@ static int scsiGetDriveInfo(int device, - (0 == strncmp((const char *)(gBuf + 36), "MVSATA", 6))) { - pout("please try '-d marvell'\n"); - return 2; -+ } else if (0 == strncmp(product, "PERC", 4)) { -+ pout("\nDELL PERC controllers are not supported.\n"); -+ return 2; - } else if ((0 == con->controller_explicit) && - (0 == strncmp(manufacturer, "ATA ", 8)) && - has_sat_pass_through(device, 0)) { diff --git a/smartmontools-5.38-selinux.patch b/smartmontools-5.38-selinux.patch deleted file mode 100644 index 3b7cfc2..0000000 --- a/smartmontools-5.38-selinux.patch +++ /dev/null @@ -1,160 +0,0 @@ -diff -up sm5.mine/configure.in.selinux sm5.mine/configure.in ---- sm5.mine/configure.in.selinux 2008-04-01 09:01:02.000000000 +0200 -+++ sm5.mine/configure.in 2008-03-28 11:06:05.000000000 +0100 -@@ -136,6 +136,16 @@ AC_ARG_ENABLE(sample,[AC_HELP_STRING([-- - AC_SUBST(smartd_suffix) - AM_CONDITIONAL(SMARTD_SUFFIX, test $smartd_suffix) - -+AC_ARG_WITH(selinux,[AC_HELP_STRING([--with-selinux],[Enables SELinux support])], -+ [ -+ AC_CHECK_HEADERS([selinux/selinux.h], [], [echo "*** Error: Missing SELinux header files";exit 1]) -+ AC_CHECK_LIB(selinux, matchpathcon, [with_selinux=yes], [echo "*** Error: Missing or incorrect SELinux library files"; exit 1],) -+ ],[]) -+AC_SUBST(with_selinux) -+if test "$with_selinux" = "yes"; then -+ AC_DEFINE(WITH_SELINUX, [1], [Define to 1 if SELinux support is enabled]) -+fi -+ - if test "$prefix" = "NONE"; then - dnl no prefix and no mandir, so use ${prefix}/share/man as default - if test "$mandir" = '${prefix}/man'; then -@@ -151,7 +161,11 @@ dnl if OS not recognized, then use the o - case "${host}" in - *-*-linux*) - AC_SUBST([os_deps], ['os_linux.o cciss.o']) -- AC_SUBST([os_libs], ['']) ;; -+ if test "$with_selinux" = "yes"; then -+ AC_SUBST([os_libs], ['-lselinux']) -+ else -+ AC_SUBST([os_libs], ['']) -+ fi;; - *-*-freebsd*|*-*-dragonfly*|*-*-kfreebsd*-gnu*) - AC_SUBST([os_deps], ['os_freebsd.o cciss.o']) - AC_SUBST([os_libs], ['-lcam']);; -diff -up sm5.mine/os_linux.cpp.selinux sm5.mine/os_linux.cpp ---- sm5.mine/os_linux.cpp.selinux 2008-04-01 09:01:14.000000000 +0200 -+++ sm5.mine/os_linux.cpp 2008-04-01 12:28:04.000000000 +0200 -@@ -60,6 +60,9 @@ - #ifndef makedev // old versions of types.h do not include sysmacros.h - #include - #endif -+#ifdef WITH_SELINUX -+#include -+#endif - - #include "int64.h" - #include "atacmds.h" -@@ -105,6 +108,14 @@ int setup_3ware_nodes(const char *nodena - char nodestring[NODE_STRING_LENGTH]; - struct stat stat_buf; - FILE *file; -+ int retval = 0; -+#ifdef WITH_SELINUX -+ security_context_t orig_context = NULL; -+ security_context_t node_context = NULL; -+ int selinux_enabled = is_selinux_enabled(); -+ int selinux_enforced = security_getenforce(); -+#endif -+ - - /* First try to open up /proc/devices */ - if (!(file = fopen("/proc/devices", "r"))) { -@@ -129,18 +140,50 @@ int setup_3ware_nodes(const char *nodena - pout("No major number for /dev/%s listed in /proc/devices. Is the %s driver loaded?\n", nodename, driver_name); - return 2; - } -- -+#ifdef WITH_SELINUX -+ /* Prepare a database of contexts for files in /dev -+ * and save the current context */ -+ if (selinux_enabled) { -+ if (matchpathcon_init_prefix(NULL, "/dev") < 0) -+ pout("Error initializing contexts database for /dev"); -+ if (getfscreatecon(&orig_context) < 0) { -+ pout("Error retrieving original SELinux fscreate context"); -+ if (selinux_enforced) -+ matchpathcon_fini(); -+ return 6; -+ } -+ } -+#endif - /* Now check if nodes are correct */ - for (index=0; index<16; index++) { - sprintf(nodestring, "/dev/%s%d", nodename, index); -- -+#ifdef WITH_SELINUX -+ /* Get context of the node and set it as the default */ -+ if (selinux_enabled) { -+ if (matchpathcon(nodestring, S_IRUSR | S_IWUSR, &node_context) < 0) { -+ pout("Could not retreive context for %s", nodestring); -+ if (selinux_enforced) { -+ retval = 6; -+ break; -+ } -+ } -+ if (setfscreatecon(node_context) < 0) { -+ pout ("Error setting default fscreate context"); -+ if (selinux_enforced) { -+ retval = 6; -+ break; -+ } -+ } -+ } -+#endif - /* Try to stat the node */ - if ((stat(nodestring, &stat_buf))) { - /* Create a new node if it doesn't exist */ - if (mknod(nodestring, S_IFCHR|0600, makedev(tw_major, index))) { - pout("problem creating 3ware device nodes %s", nodestring); - syserror("mknod"); -- return 3; -+ retval = 3; -+ break; - } - } - -@@ -153,18 +196,41 @@ int setup_3ware_nodes(const char *nodena - if (unlink(nodestring)) { - pout("problem unlinking stale 3ware device node %s", nodestring); - syserror("unlink"); -- return 4; -+ retval = 4; -+ break; - } - - /* Make a new node */ - if (mknod(nodestring, S_IFCHR|0600, makedev(tw_major, index))) { - pout("problem creating 3ware device nodes %s", nodestring); - syserror("mknod"); -- return 5; -+ retval = 5; -+ break; - } - } -+#ifdef WITH_SELINUX -+ if (selinux_enabled && node_context) { -+ freecon(node_context); -+ node_context = NULL; -+ } -+#endif - } -- return 0; -+ -+#ifdef WITH_SELINUX -+ if (selinux_enabled) { -+ if(setfscreatecon(orig_context) < 0) { -+ pout("Error re-setting original fscreate context"); -+ if (selinux_enforced) -+ retval = 6; -+ } -+ if(orig_context) -+ freecon(orig_context); -+ if(node_context) -+ freecon(node_context); -+ matchpathcon_fini(); -+ } -+#endif -+ return retval; - } - - static char prev_scsi_dev[128]; diff --git a/smartmontools-6.22-newdrivedb.patch b/smartmontools-6.22-newdrivedb.patch deleted file mode 100644 index c0ede76..0000000 --- a/smartmontools-6.22-newdrivedb.patch +++ /dev/null @@ -1,956 +0,0 @@ -diff -up smartmontools-6.2/drivedb.h.newdrivedb smartmontools-6.2/drivedb.h ---- smartmontools-6.2/drivedb.h.newdrivedb 2013-07-25 23:29:08.000000000 +0200 -+++ smartmontools-6.2/drivedb.h 2014-07-17 10:13:06.041488876 +0200 -@@ -4,7 +4,7 @@ - * Home page of code is: http://smartmontools.sourceforge.net - * - * Copyright (C) 2003-11 Philip Williams, Bruce Allen -- * Copyright (C) 2008-13 Christian Franke -+ * Copyright (C) 2008-14 Christian Franke - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by -@@ -75,7 +75,7 @@ - /* - const drive_settings builtin_knowndrives[] = { - */ -- { "$Id: drivedb.h 3840 2013-07-25 21:29:08Z chrfranke $", -+ { "$Id: drivedb.h 3952 2014-07-16 21:30:37Z chrfranke $", - "-", "-", - "This is a dummy entry to hold the SVN-Id of drivedb.h", - "" -@@ -158,8 +158,8 @@ const drive_settings builtin_knowndrives - "", "", "" - }, - { "Apacer SDM4", -- "2GB SATA Flash Drive", // tested with APSDM002G15AN-CT/SFI2101D -- "SFI2101D", "", -+ "2GB SATA Flash Drive", // tested with APSDM002G15AN-CT/SFDDA01C and SFI2101D -+ "SF(DDA01C|I2101D)", "", - "-v 160,raw48,Initial_Bad_Block_Count " - "-v 161,raw48,Bad_Block_Count " - "-v 162,raw48,Spare_Block_Count " -@@ -174,7 +174,8 @@ const drive_settings builtin_knowndrives - { "Crucial/Micron RealSSD C300/M500", // Marvell 88SS91xx - "C300-CTFDDA[AC](064|128|256)MAG|" // Marvell 88SS9174 BJP2, tested with C300-CTFDDAC128MAG/0002, - // C300-CTFDDAC064MAG/0006 -- "Crucial_CT(120|240|480)M500SSD3", // Marvell 88SS9187 BLD2, tested with Crucial_CT120M500SSD3/MU02 -+ "Crucial_CT(120|240|480)M500SSD[13]", // Marvell 88SS9187 BLD2, tested with Crucial_CT120M500SSD3/MU02, -+ // Crucial_CT120M500SSD1/MU02, Crucial_CT240M500SSD1/MU03, Crucial_CT480M500SSD1/MU03 - "", "", - //"-v 1,raw48,Raw_Read_Error_Rate " - //"-v 5,raw16(raw16),Reallocated_Sector_Ct " -@@ -197,12 +198,16 @@ const drive_settings builtin_knowndrives - //"-v 197,raw48,Current_Pending_Sector " - //"-v 198,raw48,Offline_Uncorrectable " - //"-v 199,raw48,UDMA_CRC_Error_Count " -- "-v 202,raw48,Perc_Rated_Life_Used " -- "-v 206,raw48,Write_Error_Rate" -+ "-v 202,raw48,Percent_Lifetime_Used " -+ "-v 206,raw48,Write_Error_Rate " -+ "-v 210,raw48,Success_RAIN_Recov_Cnt " -+ "-v 246,raw48,Total_Host_Sector_Write " -+ "-v 247,raw48,Host_Program_Page_Count " -+ "-v 248,raw48,Bckgnd_Program_Page_Cnt" - }, - { "Crucial/Micron RealSSD m4/C400/P400", // Marvell 9176, fixed firmware - "C400-MTFDDA[ACK](064|128|256|512)MAM|" -- "M4-CT(064|128|256|512)M4SSD[23]|" // tested with M4-CT512M4SSD2/0309 -+ "M4-CT(064|128|256|512)M4SSD[123]|" // tested with M4-CT512M4SSD2/0309 - "MTFDDAK(064|128|256|512|050|100|200|400)MA[RN]-1[JKS]1AA.*", // tested with - // MTFDDAK256MAR-1K1AA/MA52 - "030[9-Z]|03[1-Z].|0[4-Z]..|[1-Z]....*", // >= "0309" -@@ -233,7 +238,7 @@ const drive_settings builtin_knowndrives - }, - { "Crucial/Micron RealSSD m4/C400", // Marvell 9176, buggy or unknown firmware - "C400-MTFDDA[ACK](064|128|256|512)MAM|" // tested with C400-MTFDDAC256MAM/0002 -- "M4-CT(064|128|256|512)M4SSD[23]", // tested with M4-CT064M4SSD2/0002, -+ "M4-CT(064|128|256|512)M4SSD[123]", // tested with M4-CT064M4SSD2/0002, - // M4-CT064M4SSD2/0009, M4-CT256M4SSD3/000F - "", - "This drive may hang after 5184 hours of power-on time:\n" -@@ -252,22 +257,82 @@ const drive_settings builtin_knowndrives - "-v 202,raw48,Perc_Rated_Life_Used " - "-v 206,raw48,Write_Error_Rate" - }, -+ { "Crucial/Micron M500/M510/M550 Client SSDs", -+ "Micron_M500_MTFDDA[KTV](120|240|480|960)MAV|"// tested with Micron_M500_MTFDDAK960MAV/MU05 -+ "M510-MTFDDA[KTV](128|256)MAZ|" // tested with M510-MTFDDAK256MAZ/MU01 -+ "M550-MTFDDA[KTV](064|128|256|512|1T0)MAY", // tested with M550-MTFDDAK256MAY/MU01 -+ "", "", -+ //"-v 1,raw48,Raw_Read_Error_Rate " -+ "-v 5,raw48,Reallocate_NAND_Blk_Cnt " -+ //"-v 9,raw24(raw8),Power_On_Hours " -+ //"-v 12,raw48,Power_Cycle_Count " -+ "-v 171,raw48,Program_Fail_Count " -+ "-v 172,raw48,Erase_Fail_Count " -+ "-v 173,raw48,Ave_Block-Erase_Count " -+ "-v 174,raw48,Unexpect_Power_Loss_Ct " -+ "-v 180,raw48,Unused_Reserve_NAND_Blk " -+ "-v 183,raw48,SATA_Interfac_Downshift " -+ "-v 184,raw48,Error_Correction_Count " -+ //"-v 187,raw48,Reported_Uncorrect " -+ //"-v 194,tempminmax,Temperature_Celsius " -+ //"-v 196,raw16(raw16),Reallocated_Event_Count " -+ //"-v 197,raw48,Current_Pending_Sector " -+ //"-v 198,raw48,Offline_Uncorrectable " -+ //"-v 199,raw48,UDMA_CRC_Error_Count " -+ "-v 202,raw48,Percent_Lifetime_Used " -+ "-v 206,raw48,Write_Error_Rate " -+ "-v 210,raw48,Success_RAIN_Recov_Cnt " -+ "-v 246,raw48,Total_Host_Sector_Write " -+ "-v 247,raw48,Host_Program_Page_Count " -+ "-v 248,raw48,Bckgnd_Program_Page_Cnt" -+ }, -+ { "Micron M500DC Enterprise SSDs", -+ "Micron_M500DC_(EE|MT)FDDA[AK](120|240|480|800)MBB", // tested with -+ // Micron_M500DC_EEFDDAA120MBB/129, Micron_M500DC_MTFDDAK800MBB/0129 -+ "", "", -+ //"-v 1,raw48,Raw_Read_Error_Rate " -+ "-v 5,raw48,Reallocated_Block_Count " -+ //"-v 9,raw24(raw8),Power_On_Hours " -+ //"-v 12,raw48,Power_Cycle_Count " -+ "-v 170,raw48,Reserved_Block_Count " -+ "-v 171,raw48,Program_Fail_Count " -+ "-v 172,raw48,Erase_Fail_Count " -+ "-v 173,raw48,Ave_Block-Erase_Count " -+ "-v 174,raw48,Unexpect_Power_Loss_Ct " -+ "-v 184,raw48,Error_Correction_Count " -+ //"-v 187,raw48,Reported_Uncorrect " -+ "-v 188,raw48,Command_Timeouts " -+ //"-v 194,tempminmax,Temperature_Celsius " -+ "-v 195,raw48,Cumulativ_Corrected_ECC " -+ //"-v 197,raw48,Current_Pending_Sector " -+ //"-v 198,raw48,Offline_Uncorrectable " -+ //"-v 199,raw48,UDMA_CRC_Error_Count " -+ "-v 202,raw48,Percent_Lifetime_Remain " -+ "-v 206,raw48,Write_Error_Rate " -+ "-v 247,raw48,Host_Program_Page_Count " -+ "-v 248,raw48,Bckgnd_Program_Page_Cnt" -+ }, - { "SandForce Driven SSDs", - "SandForce 1st Ed\\.|" // Demo Drive, tested with firmware 320A13F0 - "ADATA SSD S(396|510|599) .?..GB|" // tested with ADATA SSD S510 60GB/320ABBF0, - // ADATA SSD S599 256GB/3.1.0, 64GB/3.4.6 -- "ADATA SP900|" // Premier Pro, SF-2281, tested with ADATA SP900/5.0.6 -+ "ADATA SP[389]00|" // tested with ADATA SP300/5.0.2d, SP800/5.0.6c, -+ // ADATA SP900/5.0.6 (Premier Pro, SF-2281) -+ "ADATA SSD SP900 (64|128|256)GB-DL2|" // tested with ADATA SSD SP900 256GB-DL2/5.0.6 -+ "ADATA XM11 (128|256)GB|" // tested with ADATA XM11 128GB/5.0.1 - "Corsair CSSD-F(40|60|80|115|120|160|240)GBP?2.*|" // Corsair Force, tested with - // Corsair CSSD-F40GB2/1.1, Corsair CSSD-F115GB2-A/2.1a -- "Corsair Force (3 SSD|GS|GT)|" // SF-2281, tested with -- // Corsair Force 3 SSD/1.3.2, GT/1.3.3, GS/5.03 -+ "Corsair Force ((3 |LS )?SSD|GS|GT)|" // SF-2281, tested with -+ // Corsair Force SSD/5.05, 3 SSD/1.3.2, GT/1.3.3, GS/5.03, LS SSD/S8FM06.5 - "FM-25S2S-(60|120|240)GBP2|" // G.SKILL Phoenix Pro, SF-1200, tested with - // FM-25S2S-240GBP2/4.2 - "FTM(06|12|24|48)CT25H|" // Supertalent TeraDrive CT, tested with - // FTM24CT25H/STTMP2P1 -+ "KINGSTON SE50S3(100|240|480)G|" // tested with SE50S3100G/KE1ABBF0 - "KINGSTON SH10[03]S3(90|120|240|480)G|" // HyperX (3K), SF-2281, tested with - // SH100S3240G/320ABBF0, SH103S3120G/505ABBF0 -- "KINGSTON SKC300S37A(60|120|240|480)G|" // SF-2281, tested with SKC300S37A120G/KC4ABBF0 -+ "KINGSTON SKC(300S37A|380S3)(60|120|240|480)G|" // SF-2281, tested with SKC300S37A120G/KC4ABBF0, -+ // SKC380S3120G/507ABBF0 - "KINGSTON SVP200S3(7A)?(60|90|120|240|480)G|" // V+ 200, SF-2281, tested with - // SVP200S37A480G/502ABBF0, SVP200S390G/332ABBF0 - "KINGSTON SMS200S3(30|60|120)G|" // mSATA, SF-2241, tested with SMS200S3120G/KC3ABBF0 -@@ -294,22 +359,26 @@ const drive_settings builtin_knowndrives - "(APOC|DENC|DENEVA|FTNC|GFGC|MANG|MMOC|NIMC|TMSC).*|" // other OCZ SF-1200, - // tested with DENCSTE251M11-0120/1.33, DENEVA PCI-E/1.33 - "(DENR|DRSAK|EC188|NIMR|PSIR|TRSAK).*|" // other OCZ SF-1500 -- "OWC Mercury Electra [36]G SSD|" // tested with -- // OWC Mercury Electra 6G SSD/502ABBF0 -- "OWC Mercury Extreme Pro (RE )?SSD|" // tested with -- // OWC Mercury Extreme Pro SSD/360A13F0 -- "OWC Mercury EXTREME Pro 6G SSD|" // tested with -- // OWC Mercury EXTREME Pro 6G SSD/507ABBF0 -+ "OWC Aura Pro 6G SSD|" // tested with OWC Aura Pro 6G SSD/507ABBF0 -+ "OWC Mercury Electra (Pro )?[36]G SSD|" // tested with -+ // OWC Mercury Electra 6G SSD/502ABBF0, OWC Mercury Electra Pro 3G SSD/541ABBF0 -+ "OWC Mercury E(xtreme|XTREME) Pro (6G |RE )?SSD|" // tested with -+ // OWC Mercury Extreme Pro SSD/360A13F0, OWC Mercury EXTREME Pro 6G SSD/507ABBF0 - "Patriot Pyro|" // tested with Patriot Pyro/332ABBF0 - "SanDisk SDSSDX(60|120|240|480)GG25|" // SanDisk Extreme, SF-2281, tested with - // SDSSDX240GG25/R201 - "SuperSSpeed S301 [0-9]*GB|" // SF-2281, tested with SuperSSpeed S301 128GB/503 -+ "SG9XCS2D(0?50|100|200|400)GESLT|" // Smart Storage Systems XceedIOPS2, tested with -+ // SG9XCS2D200GESLT/SA03L370 -+ "SSD9SC(120|240|480)GED[EA]|" // PNY Prevail Elite, tested with SSD9SC120GEDA/334ABBF0 - "(TX32|TX31C1|VN0.?..GCNMK).*|" // Smart Storage Systems XceedSTOR - "(TX22D1|TX21B1).*|" // Smart Storage Systems XceedIOPS2 - "TX52D1.*|" // Smart Storage Systems Xcel-200 -- "TS(64|128|256|512)GSSD320|" // Transcend SSD320, SF-2281, tested with TS128GSSD320 -- "UGB(88P|99S)GC...H[BF].", // Unigen, tested with -+ "TS(64|128|256|512)GSSD[37]20|" // Transcend SSD320/720, SF-2281, tested with -+ // TS128GSSD320, TS256GSSD720/5.2.0 -+ "UGB(88P|99S)GC...H[BF].|" // Unigen, tested with - // UGB88PGC100HF2/MP Rev2, UGB99SGC100HB3/RC Rev3 -+ "VisionTek GoDrive (60|120|240|480)GB", // tested with VisionTek GoDrive 480GB/506ABBF0 - "", "", - "-v 1,raw24/raw32,Raw_Read_Error_Rate " - "-v 5,raw48,Retired_Block_Count " -@@ -397,7 +466,8 @@ const drive_settings builtin_knowndrives - //"-v 233,raw48,Media_Wearout_Indicator" - }, - { "Indilinx Barefoot 3 based SSDs", -- "OCZ-VECTOR", // tested with OCZ-VECTOR/1.03 -+ "OCZ-VECTOR|" // tested with OCZ-VECTOR/1.03 -+ "OCZ-VERTEX450", // tested with OCZ-VERTEX450/1.0 (Barefoot 3 M10) - "", "", "" - "-v 5,raw48,Runtime_Bad_Block " - //"-v 9,raw24(raw8),Power_On_Hours " -@@ -413,8 +483,44 @@ const drive_settings builtin_knowndrives - "-v 208,raw48,Average_Erase_Count " - "-v 210,raw48,SATA_CRC_Error_Count " - "-v 233,raw48,Remaining_Lifetime_Perc " -+ "-v 241,raw48,Host_Writes_GiB " // M10 -+ "-v 242,raw48,Host_Reads_GiB " // M10 - "-v 249,raw48,Total_NAND_Prog_Ct_GiB" - }, -+ { "OCZ Intrepid 3000 SSDs", // tested with OCZ INTREPID 3600/1.4.3.6, 3800/1.4.3.0 -+ "OCZ INTREPID 3[68]00", -+ "", "", "" -+ "-v 5,raw48,Runtime_Bad_Block " -+ //"-v 9,raw24(raw8),Power_On_Hours " -+ //"-v 12,raw48,Power_Cycle_Count " -+ "-v 100,raw48,Total_Blocks_Erased " -+ "-v 171,raw48,Avail_OP_Block_Count " -+ "-v 174,raw48,Pwr_Cycle_Ct_Unplanned " -+ "-v 184,raw48,Factory_Bad_Block_Count " -+ "-v 187,raw48,Total_Unc_NAND_Reads " -+ "-v 190,tempminmax,Temperature_Celsius " -+ "-v 195,raw48,Total_Prog_Failures " -+ "-v 196,raw48,Total_Erase_Failures " -+ "-v 197,raw48,Total_Unc_Read_Failures " -+ "-v 198,raw48,Host_Reads_GiB " -+ "-v 199,raw48,Host_Writes_GiB " -+ "-v 202,raw48,Total_Read_Bits_Corr_Ct " -+ "-v 205,raw48,Max_Rated_PE_Count " -+ "-v 206,raw48,Min_Erase_Count " -+ "-v 207,raw48,Max_Erase_Count " -+ "-v 208,raw48,Average_Erase_Count " -+ "-v 210,raw48,SATA_CRC_Error_Count " -+ "-v 211,raw48,SATA_UNC_Count " -+ "-v 212,raw48,NAND_Reads_with_Retry " -+ "-v 213,raw48,Simple_Rd_Rtry_Attempts " -+ "-v 214,raw48,Adaptv_Rd_Rtry_Attempts " -+ "-v 221,raw48,Int_Data_Path_Prot_Unc " -+ "-v 222,raw48,RAID_Recovery_Count " -+ "-v 230,raw48,SuperCap_Charge_Status " // 0=not charged, 1=fully charged, 2=unknown -+ "-v 233,raw48,Remaining_Lifetime_Perc " -+ "-v 249,raw48,Total_NAND_Prog_Ct_GiB " -+ "-v 251,raw48,Total_NAND_Read_Ct_GiB" -+ }, - { "InnoDisk InnoLite SATADOM D150QV-L SSDs", // tested with InnoLite SATADOM D150QV-L/120319 - "InnoLite SATADOM D150QV-L", - "", "", -@@ -528,8 +634,9 @@ const drive_settings builtin_knowndrives - "-v 242,raw48,Host_Reads_32MiB" - }, - { "Intel 320 Series SSDs", // tested with INTEL SSDSA2CT040G3/4PC10362, -- // INTEL SSDSA2CW160G3/4PC10362, INTEL SSDSA2BT040G3/4PC10362, INTEL SSDSA2BW120G3A/4PC10362 -- "INTEL SSDSA[12][BC][WT](040|080|120|160|300|600)G3A?", -+ // INTEL SSDSA2CW160G3/4PC10362, INTEL SSDSA2BT040G3/4PC10362, INTEL SSDSA2BW120G3A/4PC10362, -+ // INTEL SSDSA2BW300G3D/4PC10362 -+ "INTEL SSDSA[12][BC][WT](040|080|120|160|300|600)G3[AD]?", - "", "", - "-F nologdir " - //"-v 3,raw16(avg16),Spin_Up_Time " -@@ -540,8 +647,10 @@ const drive_settings builtin_knowndrives - "-v 170,raw48,Reserve_Block_Count " - "-v 171,raw48,Program_Fail_Count " - "-v 172,raw48,Erase_Fail_Count " -+ "-v 183,raw48,SATA_Downshift_Count " // FW >= 4Px10362 - //"-v 184,raw48,End-to-End_Error " - //"-v 187,raw48,Reported_Uncorrect " -+ "-v 199,raw48,CRC_Error_Count " // FW >= 4Px10362 - "-v 192,raw48,Unsafe_Shutdown_Count " - "-v 225,raw48,Host_Writes_32MiB " - "-v 226,raw48,Workld_Media_Wear_Indic " // Timed Workload Media Wear Indicator (percent*1024) -@@ -615,6 +724,58 @@ const drive_settings builtin_knowndrives - "-v 242,raw48,Host_Reads_32MiB " - "-v 249,raw48,NAND_Writes_1GiB" - }, -+ { "Intel 525 Series SSDs", // mSATA, tested with SSDMCEAC120B3/LLLi -+ "INTEL SSDMCEAC(030|060|090|120|180|240)B3", -+ "", "", -+ //"-v 5,raw16(raw16),Reallocated_Sector_Ct " -+ "-v 9,msec24hour32,Power_On_Hours_and_Msec " -+ //"-v 12,raw48,Power_Cycle_Count " -+ "-v 170,raw48,Available_Reservd_Space " -+ "-v 171,raw48,Program_Fail_Count " -+ "-v 172,raw48,Erase_Fail_Count " -+ "-v 174,raw48,Unexpect_Power_Loss_Ct " -+ "-v 183,raw48,SATA_Downshift_Count " -+ //"-v 184,raw48,End-to-End_Error " -+ "-v 187,raw48,Uncorrectable_Error_Cnt " -+ //"-v 190,tempminmax,Airflow_Temperature_Cel " -+ //"-v 192,raw48,Power-Off_Retract_Count " -+ //"-v 199,raw48,UDMA_CRC_Error_Count " -+ "-v 225,raw48,Host_Writes_32MiB " -+ "-v 226,raw48,Workld_Media_Wear_Indic " -+ "-v 227,raw48,Workld_Host_Reads_Perc " -+ "-v 228,raw48,Workload_Minutes " -+ //"-v 232,raw48,Available_Reservd_Space " -+ //"-v 233,raw48,Media_Wearout_Indicator " -+ "-v 241,raw48,Host_Writes_32MiB " -+ "-v 242,raw48,Host_Reads_32MiB " -+ "-v 249,raw48,NAND_Writes_1GiB" -+ }, -+ { "Intel 530 Series SSDs", // tested with INTEL SSDSC2BW180A4/DC12, SSDSC2BW240A4/DC12 -+ "INTEL SSDSC2BW(080|120|180|240|360|480)A4", -+ "", "", -+ //"-v 5,raw16(raw16),Reallocated_Sector_Ct " -+ "-v 9,msec24hour32,Power_On_Hours_and_Msec " -+ //"-v 12,raw48,Power_Cycle_Count " -+ "-v 170,raw48,Available_Reservd_Space " -+ "-v 171,raw48,Program_Fail_Count " -+ "-v 172,raw48,Erase_Fail_Count " -+ "-v 174,raw48,Unexpect_Power_Loss_Ct " -+ "-v 183,raw48,SATA_Downshift_Count " -+ //"-v 184,raw48,End-to-End_Error " -+ "-v 187,raw48,Uncorrectable_Error_Cnt " -+ //"-v 190,tempminmax,Airflow_Temperature_Cel " -+ //"-v 192,raw48,Power-Off_Retract_Count " -+ //"-v 199,raw48,UDMA_CRC_Error_Count " -+ "-v 225,raw48,Host_Writes_32MiB " -+ "-v 226,raw48,Workld_Media_Wear_Indic " -+ "-v 227,raw48,Workld_Host_Reads_Perc " -+ "-v 228,raw48,Workload_Minutes " -+ //"-v 232,raw48,Available_Reservd_Space " -+ //"-v 233,raw48,Media_Wearout_Indicator " -+ "-v 241,raw48,Host_Writes_32MiB " -+ "-v 242,raw48,Host_Reads_32MiB " -+ "-v 249,raw48,NAND_Writes_1GiB" -+ }, - { "Intel 330/335 Series SSDs", // tested with INTEL SSDSC2CT180A3/300i, SSDSC2CT240A3/300i, - // INTEL SSDSC2CT240A4/335t - "INTEL SSDSC2CT(060|120|180|240)A[34]", // A4 = 335 Series -@@ -632,8 +793,9 @@ const drive_settings builtin_knowndrives - "-v 242,raw48,Host_Reads_32MiB " - "-v 249,raw48,NAND_Writes_1GiB" - }, -- { "Intel DC S3700 Series SSDs", // tested with INTEL SSDSC2BA200G3/5DV10250 -- "INTEL SSDSC(1N|2B)A(100|200|400|800)G3", -+ { "Intel 730 and DC S3500/S3700 Series SSDs", // tested with INTEL SSDSC2BP480G4, SSDSC2BB120G4/D2010355, -+ // INTEL SSDSC2BB800G4T, SSDSC2BA200G3/5DV10250 -+ "INTEL SSDSC(1N|2B)[ABP](080|100|120|160|200|240|300|400|480|600|800)G[34]T?", // A=S3700, B=S3500, P=730 - "", "", - //"-v 3,raw16(avg16),Spin_Up_Time " - //"-v 4,raw48,Start_Stop_Count " -@@ -644,7 +806,7 @@ const drive_settings builtin_knowndrives - "-v 171,raw48,Program_Fail_Count " - "-v 172,raw48,Erase_Fail_Count " - "-v 174,raw48,Unsafe_Shutdown_Count " -- "-v 175,raw48,Power_Loss_Cap_Test " -+ "-v 175,raw16(raw16),Power_Loss_Cap_Test " - "-v 183,raw48,SATA_Downshift_Count " - //"-v 184,raw48,End-to-End_Error " - //"-v 187,raw48,Reported_Uncorrect " -@@ -659,9 +821,10 @@ const drive_settings builtin_knowndrives - "-v 228,raw48,Workload_Minutes " // 226,227,228 can be reset by 'smartctl -t vendor,0x40' - //"-v 232,raw48,Available_Reservd_Space " - //"-v 233,raw48,Media_Wearout_Indicator " -- "-v 234,raw48,Thermal_Throttle " -+ "-v 234,raw24/raw32:04321,Thermal_Throttle " - "-v 241,raw48,Host_Writes_32MiB " -- "-v 242,raw48,Host_Reads_32MiB" -+ "-v 242,raw48,Host_Reads_32MiB " -+ "-F xerrorlba" // tested with SSDSC2BB600G4/D2010355 - }, - { "Kingston branded X25-V SSDs", // fixed firmware - "KINGSTON SSDNow 40GB", -@@ -700,8 +863,9 @@ const drive_settings builtin_knowndrives - "-v 234,raw24/raw24:w01234,Avg/Max_Erase_Count " - "-v 235,raw24/raw24:w01z23,Good/Sys_Block_Count" - }, -- { "JMicron based SSDs", // JMicron JMF61x -+ { "JMicron based SSDs", // JMicron JMF61x, JMF661 - "ADATA S596 Turbo|" // tested with ADATA S596 Turbo 256GB SATA SSD (JMicron JMF616) -+ "ADATA SP600|" // tested with ADATA SP600/2.4 (JMicron JMF661) - "APPLE SSD TS.*|" // Toshiba?, tested with APPLE SSD TS064C/CJAA0201 - "KINGSTON SNV425S2(64|128)GB|" // SSDNow V Series (2. Generation, JMF618), - // tested with KINGSTON SNV425S264GB/C091126a -@@ -729,17 +893,18 @@ const drive_settings builtin_knowndrives - "-v 168,raw48,SATA_Phy_Error_Count " - //"-v 169,raw48,Unknown_Attribute " - "-v 170,raw16,Bad_Block_Count " -- "-v 173,raw16,Erase_Count " -+ "-v 173,raw16,Erase_Count " // JMF661: different? - "-v 175,raw48,Bad_Cluster_Table_Count " - "-v 192,raw48,Unexpect_Power_Loss_Ct " - //"-v 194,tempminmax,Temperature_Celsius " - //"-v 197,raw48,Current_Pending_Sector " - "-v 240,raw48,Unknown_Attribute" - }, -- { "Plextor M3 (Pro) Series SSDs", // Marvell 9174, tested with PLEXTOR PX-128M3/1.01, -- // PLEXTOR PX-128M3P/1.04, PLEXTOR PX-256M3/1.05 -+ { "Plextor M3/M5 (Pro) Series SSDs", // Marvell 88SS9174 (M3, M5S), 88SS9187 (M5Pro), tested with -+ // PLEXTOR PX-128M3/1.01, PX-128M3P/1.04, PX-256M3/1.05, PX-128M5S/1.02, PX-256M5S/1.03, -+ // PX-128M5S/1.05, PX-128M5Pro/1.05, PX-512M5Pro/1.06 - // (1.04/5 Firmware self-test log lifetime unit is bogus, possibly 1/256 hours) -- "PLEXTOR PX-(64|128|256|512)M3P?", -+ "PLEXTOR PX-(64|128|256|512)M(3P?|5S|5Pro)", - "", "", - //"-v 1,raw48,Raw_Read_Error_Rate " - //"-v 5,raw16(raw16),Reallocated_Sector_Ct " -@@ -755,7 +920,8 @@ const drive_settings builtin_knowndrives - //"-v 198,raw48,Offline_Uncorrectable " - //"-v 199,raw48,UDMA_CRC_Error_Count " - //"-v 232,raw48,Available_Reservd_Space " -- "" -+ "-v 241,raw48,Host_Writes_32MiB " -+ "-v 242,raw48,Host_Reads_32MiB" - }, - { "Samsung based SSDs", - "SAMSUNG SSD PM800 .*GB|" // SAMSUNG PM800 SSDs, tested with SAMSUNG SSD PM800 TH 64GB/VBM25D1Q -@@ -791,6 +957,53 @@ const drive_settings builtin_knowndrives - "-v 235,raw48,POR_Recovery_Count " // 830/840 Series - //"-v 241,raw48,Total_LBAs_Written" - }, -+ { "Marvell based SanDisk SSDs", -+ "SanDisk SD5SG2[0-9]*G1052E|" // X100 (88SS9174), tested with SanDisk SD5SG2256G1052E/10.04.01 -+ "SanDisk SD6SB1M[0-9]*G1022I|" // X110 (88SS9175), tested with SanDisk SD6SB1M(064|256)G1022I/X231600 -+ "SanDisk SDSSDHP[0-9]*G|" // Ultra Plus (88SS9175), tested with SanDisk SDSSDHP128G/X23[01]6RL -+ "SanDisk SDSSDXP[0-9]*G", // Extreme II (88SS9187), tested with SanDisk SDSSDXP480G/R1311 -+ "", "", -+ //"-v 5,raw16(raw16),Reallocated_Sector_Ct " -+ //"-v 9,raw24(raw8),Power_On_Hours " -+ //"-v 12,raw48,Power_Cycle_Count " -+ "-v 166,raw48,Min_W/E_Cycle " -+ "-v 167,raw48,Min_Bad_Block/Die " -+ "-v 168,raw48,Maximum_Erase_Cycle " -+ "-v 169,raw48,Total_Bad_Block " -+ "-v 171,raw48,Program_Fail_Count " -+ "-v 172,raw48,Erase_Fail_Count " -+ "-v 173,raw48,Avg_Write_Erase_Ct " -+ "-v 174,raw48,Unexpect_Power_Loss_Ct " -+ //"-v 187,raw48,Reported_Uncorrect " -+ //"-v 194,tempminmax,Temperature_Celsius " -+ "-v 212,raw48,SATA_PHY_Error " -+ "-v 230,raw48,Perc_Write_Erase_Count " -+ "-v 232,raw48,Perc_Avail_Resrvd_Space " -+ "-v 233,raw48,Total_NAND_Writes_GiB " -+ "-v 241,raw48,Total_Writes_GiB " -+ "-v 242,raw48,Total_Reads_GiB " -+ //"-v 243,raw48,Unknown_Attribute " -+ }, -+ { "SanDisk based SSDs", -+ "SanDisk iSSD P4 [0-9]*GB|" // tested with SanDisk iSSD P4 16GB/SSD 9.14 -+ "SanDisk SDSSDP[0-9]*G|" // tested with SanDisk SDSSDP064G/1.0.0, SDSSDP128G/2.0.0 -+ "SanDisk SSD i100 [0-9]*GB|" // tested with SanDisk SSD i100 8GB/11.56.04, 24GB/11.56.04 -+ "SanDisk SSD U100 ([0-9]*GB|SMG2)", // tested with SanDisk SSD U100 8GB/10.56.00, 256GB/10.01.02, SMG2/10.56.04 -+ "", "", -+ //"-v 5,raw16(raw16),Reallocated_Sector_Ct " -+ //"-v 9,raw24(raw8),Power_On_Hours " -+ //"-v 12,raw48,Power_Cycle_Count " -+ "-v 171,raw48,Program_Fail_Count " -+ "-v 172,raw48,Erase_Fail_Count " -+ "-v 173,raw48,Avg_Write_Erase_Ct " -+ "-v 174,raw48,Unexpect_Power_Loss_Ct " -+ //"-v 187,raw48,Reported_Uncorrect " -+ "-v 230,raw48,Perc_Write_Erase_Count " -+ "-v 232,raw48,Perc_Avail_Resrvd_Space " -+ "-v 234,raw48,Perc_Write_Erase_Ct_BC " -+ //"-v 241,raw48,Total_LBAs_Written " -+ //"-v 242,raw48,Total_LBAs_Read " -+ }, - { "Smart Storage Systems Xcel-10 SSDs", // based on http://www.smartm.com/files/salesLiterature/storage/xcel10.pdf - "SMART A25FD-(32|64|128)GI32N", // tested with SMART A25FD-128GI32N/B9F23D4K - "", -@@ -1139,6 +1352,10 @@ const drive_settings builtin_knowndrives - "SAMSUNG HE(502H|754J|103S)J", - "", "", "" - }, -+ { "Seagate Samsung Spinpoint F4", // tested with ST250DM001 HD256GJ/1AR10001 -+ "ST(250|320)DM001 HD(256G|322G|323H)J", -+ "", "", "" -+ }, - { "SAMSUNG SpinPoint F4 EG (AF)",// tested with HD204UI/1AQ10001(buggy|fixed) - "SAMSUNG HD(155|204)UI", - "", // 1AQ10001 -@@ -1148,7 +1365,7 @@ const drive_settings builtin_knowndrives - "Buggy and fixed firmware report same version number!\n" - "See the following web pages for details:\n" - "http://knowledge.seagate.com/articles/en_US/FAQ/223571en\n" -- "http://sourceforge.net/apps/trac/smartmontools/wiki/SamsungF4EGBadBlocks", -+ "http://www.smartmontools.org/wiki/SamsungF4EGBadBlocks", - "" - }, - { "SAMSUNG SpinPoint S250", // tested with HD200HJ/KF100-06 -@@ -1887,8 +2104,8 @@ const drive_settings builtin_knowndrives - "", "", "" - }, - { "Toshiba 2.5\" HDD MK..65GSX", // tested with TOSHIBA MK5065GSX/GJ003A, MK3265GSXN/GH012H, -- // MK5065GSXF/GP006B -- "TOSHIBA MK(16|25|32|50|64)65GSX[FN]?", -+ // MK5065GSXF/GP006B, MK2565GSX H/GJ003A -+ "TOSHIBA MK(16|25|32|50|64)65GSX[FN]?( H)?", // "... H" = USB ? - "", "", "" - }, - { "Toshiba 2.5\" HDD MK..76GSX", // tested with TOSHIBA MK3276GSX/GS002D -@@ -1901,10 +2118,18 @@ const drive_settings builtin_knowndrives - "TOSHIBA MQ01ABD(025|032|050|064|075|100)", - "", "", "" - }, -+ { "Toshiba 2.5\" HDD MQ01UBD... (USB 3.0)", // tested with TOSHIBA MQ01ABD100/AX001U -+ "TOSHIBA MQ01UBD(050|075|100)", -+ "", "", "" -+ }, - { "Toshiba 3.5\" HDD MK.002TSKB", // tested with TOSHIBA MK1002TSKB/MT1A - "TOSHIBA MK(10|20)02TSKB", - "", "", "" - }, -+ { "Toshiba 3.5\" MG03ACAxxx(Y) Enterprise HDD", // tested with TOSHIBA MG03ACA100/FL1A -+ "TOSHIBA MG03ACA[1234]00Y?", -+ "", "", "" -+ }, - { "Toshiba 3.5\" HDD DT01ACA...", // tested with TOSHIBA DT01ACA100/MS2OA750, - // TOSHIBA DT01ACA200/MX4OABB0, TOSHIBA DT01ACA300/MX6OABB0 - "TOSHIBA DT01ACA(025|032|050|075|100|150|200|300)", -@@ -2037,6 +2262,10 @@ const drive_settings builtin_knowndrives - "ST(160|250|320)LT0(07|09|11|14)-.*", - "", "", "" - }, -+ { "Seagate Laptop Thin HDD", // tested with ST500LT012-9WS142/0001SDM1 -+ "ST(250|320|500)LT0(12|15|25)-.*", -+ "", "", "" -+ }, - { "Seagate Laptop SSHD", // tested with ST500LM000-1EJ162/SM11 - "ST(500|1000)LM0(00|14)-.*", - "", "", "" -@@ -2183,14 +2412,14 @@ const drive_settings builtin_knowndrives - }, - { "Seagate Barracuda 7200.14 (AF)", // new firmware, tested with - // ST3000DM001-9YN166/CC4H, ST3000DM001-9YN166/CC9E -- "ST(1000|1500|2000|2500|3000)DM00[1-3]-.*", -+ "ST(1000|1500|2000|2500|3000)DM00[1-3]-9YN16.", - "CC(4[H-Z]|[5-9A-Z]..*)", // >= "CC4H" - "", - "-v 188,raw16 -v 240,msec24hour32" // tested with ST3000DM001-9YN166/CC4H - }, - { "Seagate Barracuda 7200.14 (AF)", // old firmware, tested with - // ST1000DM003-9YN162/CC46 -- "ST(1000|1500|2000|2500|3000)DM00[1-3]-.*", -+ "ST(1000|1500|2000|2500|3000)DM00[1-3]-9YN16.", - "CC4[679CG]", - "A firmware update for this drive is available,\n" - "see the following Seagate web pages:\n" -@@ -2199,7 +2428,7 @@ const drive_settings builtin_knowndrives - "-v 188,raw16 -v 240,msec24hour32" - }, - { "Seagate Barracuda 7200.14 (AF)", // unknown firmware -- "ST(1000|1500|2000|2500|3000)DM00[1-3]-.*", -+ "ST(1000|1500|2000|2500|3000)DM00[1-3]-9YN16.", - "", - "A firmware update for this drive may be available,\n" - "see the following Seagate web pages:\n" -@@ -2207,6 +2436,13 @@ const drive_settings builtin_knowndrives - "http://knowledge.seagate.com/articles/en_US/FAQ/223651en", - "-v 188,raw16 -v 240,msec24hour32" - }, -+ { "Seagate Barracuda 7200.14 (AF)", // different part number, tested with -+ // ST1000DM003-1CH162/CC47, ST1000DM003-1CH162/CC49, ST2000DM001-1CH164/CC24, -+ // ST1000DM000-9TS15E/CC92 -+ "ST(1000|1500|2000|2500|3000)DM00[0-3]-.*", -+ "", "", -+ "-v 188,raw16 -v 240,msec24hour32" -+ }, - { "Seagate Barracuda 7200.14 (AF)", // < 1TB, tested with ST250DM000-1BC141 - "ST(250|320|500|750)DM00[0-3]-.*", - "", "", -@@ -2217,6 +2453,11 @@ const drive_settings builtin_knowndrives - "", "", - "-v 188,raw16 -v 240,msec24hour32" - }, -+ { "Seagate Desktop SSHD", // tested with ST2000DX001-1CM164/CC43 -+ "ST(1000|2000|4000)DX001-.*", -+ "", "", -+ "-v 188,raw16 -v 240,msec24hour32" -+ }, - { "Seagate Barracuda LP", // new firmware - "ST3(500412|1000520|1500541|2000542)AS", - "CC3[5-9A-Z]", -@@ -2234,7 +2475,7 @@ const drive_settings builtin_knowndrives - }, - { "Seagate Barracuda Green (AF)", // new firmware - "ST((10|15|20)00DL00[123])-.*", -- "CC3[2-9A-Z]", -+ "CC(3[2-9A-Z]|[4-9A-Z]..*)", // >= "CC32" - "", "" - }, - { "Seagate Barracuda Green (AF)", // unknown firmware -@@ -2295,6 +2536,18 @@ const drive_settings builtin_knowndrives - "ST[1234]000NM00[35]3-.*", - "", "", "" - }, -+ { "Seagate Constellation CS", // tested with ST3000NC000/CE02, ST3000NC002-1DY166/CN02 -+ "ST(1000|2000|3000)NC00[0-3](-.*)?", -+ "", "", "" -+ }, -+ { "Seagate Constellation.2 (SATA)", // 2.5", tested with ST91000640NS/SN02 -+ "ST9(25061|50062|100064)[012]NS", // *SS = SAS -+ "", "", "" -+ }, -+ { "Seagate NAS HDD", // tested with ST2000VN000-1H3164/SC42, ST3000VN000-1H4167/SC43 -+ "ST[234]000VN000-.*", -+ "", "", "" -+ }, - { "Seagate Pipeline HD 5900.1", - "ST3(160310|320[34]10|500(321|422))CS", - "", "", "" -@@ -2303,6 +2556,10 @@ const drive_settings builtin_knowndrives - "ST3(160316|250[34]12|320(311|413)|500(312|414)|1000(322|424))CS", - "", "", "" - }, -+ { "Seagate Video 3.5 HDD", // tested with ST4000VM000-1F3168/SC23, SC25 -+ "ST(10|15|20|30|40)00VM00[023]-.*", -+ "", "", "" -+ }, - { "Seagate Medalist 17240, 13030, 10231, 8420, and 4310", - "ST3(17240|13030|10231|8420|4310)A", - "", "", "" -@@ -2473,8 +2730,13 @@ const drive_settings builtin_knowndrives - "WDC WD2002FYPS-.*", - "", "", "" - }, -- { "Western Digital RE4 (SATA 6Gb/s)", // tested with WDC WD2000FYYZ-01UL1B0/01.01K01 -- "WDC WD(20|30|40)00FYYZ-.*", -+ { "Western Digital RE4 (SATA 6Gb/s)", // tested with WDC WD2000FYYZ-01UL1B0/01.01K01, -+ // WD2000FYYX/00.0D1K2 -+ "WDC WD(20|30|40)00FYYZ-.*|WD2000FYYX", -+ "", "", "" -+ }, -+ { "Western Digital Se", // tested with WDC WD2000F9YZ-09N20L0/01.01A01 -+ "WDC WD(1002|2000|3000|4000)F9YZ-.*", - "", "", "" - }, - { "Western Digital Caviar Green", -@@ -2489,21 +2751,18 @@ const drive_settings builtin_knowndrives - }, - { "Western Digital Caviar Green (AF, SATA 6Gb/s)", // tested with - // WDC WD10EZRX-00A8LB0/01.01A01, WDC WD20EZRX-00DC0B0/80.00A80, -- // WDC WD30EZRX-00MMMB0/80.00A80 -- "WDC WD(7500AA|(10|15|20)EA|(10|20|25|30)EZ)RX-.*", -+ // WDC WD30EZRX-00MMMB0/80.00A80, WDC WD40EZRX-00SPEB0/80.00A80 -+ "WDC WD(7500AA|(10|15|20)EA|(10|20|25|30|40)EZ)RX-.*", - "", "", "" - }, - { "Western Digital Caviar Black", - "WDC WD((500|640|750)1AAL|1001FA[EL]|2001FAS)S-.*", - "", "", "" - }, -- { "Western Digital Caviar Black", // SATA 6 Gb/s variants, tested with -- // WDC WD4001FAEX-00MJRA0/01.01L01 -- "WDC WD(5002AAL|(64|75)02AAE|((10|15|20)02|4001)FAE)X-.*", -- "", "", "" -- }, -- { "Western Digital Caviar Black (AF)", // tested with WDC WD5003AZEX-00RKKA0/80.00A80 -- "WDC WD(5003AZE)X-.*", -+ { "Western Digital Black", // tested with -+ // WDC WD5003AZEX-00RKKA0/80.00A80, WDC WD1003FZEX-00MK2A0/01.01A01, -+ // WDC WD3001FAEX-00MJRA0/01.01L01, WDC WD4001FAEX-00MJRA0/01.01L01 -+ "WDC WD(5002AAL|5003AZE|(64|75)02AAE|((10|15|20)0[23]|[34]001)F[AZ]E)X-.*", - "", "", "" - }, - { "Western Digital AV ATA", // tested with WDC WD3200AVJB-63J5A0/01.03E01 -@@ -2571,15 +2830,24 @@ const drive_settings builtin_knowndrives - "WDC WD(50|75)00BPKT-.*", - "", "", "" - }, -- { "Western Digital Red (AF)", // tested with WDC WD10EFRX-68JCSN0/01.01A01 -- "WDC WD(10|20|30)EFRX-.*", -+ { "Western Digital Red (AF)", // tested with WDC WD10EFRX-68JCSN0/01.01A01, -+ // WDC WD10JFCX-68N6GN0/01.01A01, WDC WD40EFRX-68WT0N0/80.00A80 -+ "WDC WD(10|20|30|40)[EJ]F[CR]X-.*", -+ "", "", "" -+ }, -+ { "Western Digital Blue Mobile", // tested with WDC WD5000LPVX-08V0TT2/03.01A03 -+ "WDC WD((25|32|50|75)00[BLM]|10[JS])P[CV][TX]-.*", -+ "", "", "" -+ }, -+ { "Western Digital Green Mobile", // tested with WDC WD20NPVX-00EA4T0/01.01A01 -+ "WDC WD(15|20)NPV[TX]-.*", - "", "", "" - }, -- { "Western Digital My Passport (USB)", // tested with WDC WD5000BMVW-11AMCS0/01.01A01 -+ { "Western Digital Elements / My Passport (USB)", // tested with WDC WD5000BMVW-11AMCS0/01.01A01 - "WDC WD(25|32|40|50)00BMV[UVW]-.*", // *W-* = USB 3.0 - "", "", "" - }, -- { "Western Digital My Passport (USB, AF)", // tested with -+ { "Western Digital Elements / My Passport (USB, AF)", // tested with - // WDC WD5000KMVV-11TK7S1/01.01A01, WDC WD10TMVW-11ZSMS5/01.01A01, - // WDC WD10JMVW-11S5XS1/01.01A01, WDC WD20NMVW-11W68S0/01.01A01 - "WDC WD(5000[LK]|7500K|10[JT]|20N)MV[VW]-.*", // *W-* = USB 3.0 -@@ -2672,6 +2940,12 @@ const drive_settings builtin_knowndrives - "", - "-d sat" - }, -+ { "USB: Buffalo MiniStationHD-PCFU3; ", -+ "0x0411:0x0240", -+ "", -+ "", -+ "-d sat" -+ }, - // LG Electronics - { "USB: LG Mini HXD5; JMicron", - "0x043e:0x70f1", -@@ -2687,6 +2961,12 @@ const drive_settings builtin_knowndrives - "-d sat" - }, - // Toshiba -+ { "USB: Toshiba Stor.E Slim USB 3.0; ", // 1TB, MQ01UBD100 -+ "0x0480:0x0100", -+ "", // 0x0000 -+ "", -+ "-d sat" -+ }, - { "USB: Toshiba Canvio 500GB; SunPlus", - "0x0480:0xa004", - "", -@@ -2705,6 +2985,18 @@ const drive_settings builtin_knowndrives - "", - "-d sat" - }, -+ { "USB: Toshiba Stor.E Basics; ", // 1TB -+ "0x0480:0xa009", -+ "", -+ "", -+ "-d sat" -+ }, -+ { "USB: Toshiba Stor.E Plus", // 2TB -+ "0x0480:0xa00a", -+ "", -+ "", -+ "-d sat" -+ }, - { "USB: Toshiba Canvio Desktop; ", // 2TB - "0x0480:0xd010", - "", -@@ -2788,8 +3080,14 @@ const drive_settings builtin_knowndrives - "", - "-d sat" - }, -- { "USB: Samsung M3 Portable USB 3.0; ", // 1TB -- "0x04e8:0x61b6", -+ { "USB: Samsung D3 Station; ", // 3TB -+ "0x04e8:0x6124", -+ "", // 0x200 -+ "", -+ "-d sat" -+ }, -+ { "USB: Samsung M3 Portable USB 3.0; ", -+ "0x04e8:0x61b[456]", // 4=2TB, 5=1.5TB, 6=1TB - "", // 0x0e00 - "", - "-d sat" -@@ -2850,6 +3148,12 @@ const drive_settings builtin_knowndrives - "", - "-d usbjmicron" - }, -+ { "USB: Iomega; JMicron", -+ "0x059b:0x047a", -+ "", // 0x0100 -+ "", -+ "-d sat" // works also with "-d usbjmicron" -+ }, - // LaCie - { "USB: LaCie hard disk (FA Porsche design);", - "0x059f:0x0651", -@@ -3041,7 +3345,7 @@ const drive_settings builtin_knowndrives - }, - // Lumberg, Inc. - { "USB: Toshiba Stor.E; Sunplus", -- "0x0939:0x0b16", -+ "0x0939:0x0b1[56]", - "", - "", - "-d usbsunplus" -@@ -3066,7 +3370,7 @@ const drive_settings builtin_knowndrives - "-d sat" - }, - { "USB: Seagate Expansion Portable; ", -- "0x0bc2:0x2300", -+ "0x0bc2:0x23(00|12)", - "", - "", - "-d sat" -@@ -3090,13 +3394,13 @@ const drive_settings builtin_knowndrives - "-d sat,12" - }, - { "USB: Seagate Expansion External; ", // 2TB, 3TB -- "0x0bc2:0x33(00|20|32)", -+ "0x0bc2:0x33(00|12|20|32)", - "", - "", - "-d sat" - }, - { "USB: Seagate FreeAgent GoFlex USB 2.0; ", -- "0x0bc2:0x5021", -+ "0x0bc2:0x502[01]", - "", - "", - "-d sat" -@@ -3227,44 +3531,14 @@ const drive_settings builtin_knowndrives - "", - "-d usbcypress" - }, -- { "USB: WD My Passport Portable; ", -- "0x1058:0x0702", -- "", // 0x0102 -- "", -- "-d sat" -- }, -- { "USB: WD My Passport Essential; ", -- "0x1058:0x0704", -- "", // 0x0175 -- "", -- "-d sat" -- }, -- { "USB: WD My Passport Elite; ", -- "0x1058:0x0705", -- "", // 0x0175 -- "", -- "-d sat" -- }, -- { "USB: WD My Passport 070A; ", -- "0x1058:0x070a", -- "", // 0x1028 -- "", -- "-d sat" -- }, -- { "USB: WD My Passport 0730; ", -- "0x1058:0x0730", -- "", // 0x1008 -- "", -- "-d sat" -- }, -- { "USB: WD My Passport Essential SE USB 3.0; ", -- "0x1058:0x074[02]", -+ { "USB: WD My Passport; ", -+ "0x1058:0x07(0[245a]|30)", - "", - "", - "-d sat" - }, - { "USB: WD My Passport USB 3.0; ", -- "0x1058:0x07[4a]8", -+ "0x1058:0x0(74[0128a]|7a8|820)", - "", - "", - "-d sat" -@@ -3294,7 +3568,7 @@ const drive_settings builtin_knowndrives - "-d sat" - }, - { "USB: WD Elements; ", -- "0x1058:0x10(10|a2)", -+ "0x1058:0x10(10|48|a2)", - "", // 0x0105 - "", - "-d sat" -@@ -3317,6 +3591,12 @@ const drive_settings builtin_knowndrives - "", - "-d sat" - }, -+ { "USB: WD Elements; ", -+ "0x1058:0x10[ab]8", // a=1TB, b=2TB -+ "", // a=0x1042, b=0x1007 -+ "", -+ "-d sat" -+ }, - { "USB: WD My Book Essential; ", - "0x1058:0x1100", - "", // 0x0165 -@@ -3360,7 +3640,13 @@ const drive_settings builtin_knowndrives - "", - "-d sat" - }, -- // A-DATA -+ // ADATA -+ { "USB: ADATA; ", -+ "0x125f:0xa[13]1a", // 1=Classic CH11 1TB, 3=DashDrive HV620 2TB -+ "", // 0x0100 -+ "", -+ "-d sat" -+ }, - { "USB: A-DATA SH93; Cypress", - "0x125f:0xa93a", - "", // 0x0150 -@@ -3410,6 +3696,12 @@ const drive_settings builtin_knowndrives - "", - "-d sat" - }, -+ { "USB: ; Initio", -+ "0x13fd:0x1640", -+ "", // 0x0864 -+ "", -+ "-d sat,12" // some SMART commands fail, see ticket #295 -+ }, - { "USB: Intenso Memory Station 2,5\"; Initio", - "0x13fd:0x1840", - "", -@@ -3430,12 +3722,19 @@ const drive_settings builtin_knowndrives - "-d usbcypress" - }, - // JMicron -- { "USB: ; JMicron USB 3.0", -+ { "USB: ; JMicron JMS539", // USB2/3->SATA (old firmware) - "0x152d:0x0539", -- "", // 0x0100 -+ "0x0100", // 1.00 - "", - "-d usbjmicron" - }, -+ { "USB: ; JMicron JMS539", // USB2/3->SATA (new firmware) -+ "0x152d:0x0539", -+ "0x0205|" // 2.05, ticket #338 -+ "0x2812", // 28.12, Mediasonic ProBox H82-SU3S2 (port multiplier) -+ "", -+ "-d sat" -+ }, - { "USB: ; JMicron ", // USB->SATA->4xSATA (port multiplier) - "0x152d:0x0551", - "", // 0x0100 -@@ -3511,6 +3810,12 @@ const drive_settings builtin_knowndrives - "", - "-d sat" - }, -+ { "USB: ; ASMedia AS2105", // Icy Box IB-AC603A-U3 -+ "0x174c:0x5136", -+ "", // 0x0001 -+ "", -+ "-d sat" -+ }, - // LucidPort - { "USB: ; LucidPORT USB300", // RaidSonic ICY BOX IB-110StU3-B, Sharkoon SATA QuickPort H3 - "0x1759:0x500[02]", // 0x5000: USB 2.0, 0x5002: USB 3.0 -@@ -3518,6 +3823,12 @@ const drive_settings builtin_knowndrives - "", - "-d sat" - }, -+ { "USB: ; LucidPort", // Fuj:tech SATA-USB3 dock -+ "0x1759:0x5100", -+ "", // 0x2580 -+ "", -+ "-d sat" -+ }, - // Verbatim - { "USB: Verbatim Portable Hard Drive; Sunplus", - "0x18a5:0x0214", -@@ -3569,6 +3880,13 @@ const drive_settings builtin_knowndrives - "", - "-d usbsunplus" - }, -+ // TrekStor -+ { "USB: TrekStor DataStation; ", // DataStation maxi light (USB 3.0) -+ "0x1e68:0x0050", -+ "", // 0x0100 -+ "", -+ "-d sat" -+ }, - // Innostor - { "USB: ; Innostor IS888", // Sharkoon SATA QuickDeck Pro USB 3.0 - "0x1f75:0x0888", diff --git a/smartmontools.spec b/smartmontools.spec index ee90255..62dedb0 100644 --- a/smartmontools.spec +++ b/smartmontools.spec @@ -1,7 +1,7 @@ Summary: Tools for monitoring SMART capable hard disks Name: smartmontools Version: 7.0 -Release: 5%{?dist} +Release: 6%{?dist} Epoch: 1 License: GPLv2+ URL: http://smartmontools.sourceforge.net/ @@ -38,14 +38,8 @@ cp %{SOURCE5} . %build autoreconf -i -%configure --with-selinux --with-libcap-ng=yes --with-libsystemd --with-systemdsystemunitdir=%{_unitdir} --sysconfdir=%{_sysconfdir}/%name/ -%ifarch sparc64 -%make_build CXXFLAGS="$RPM_OPT_FLAGS -fPIE" LDFLAGS="-pie -Wl,-z,relro,-z,now" -%else +%configure --with-selinux --with-libcap-ng=yes --with-libsystemd --with-systemdsystemunitdir=%{_unitdir} --sysconfdir=%{_sysconfdir}/%{name}/ --with-systemdenvfile=%{_sysconfdir}/sysconfig/%{name} %make_build CXXFLAGS="$RPM_OPT_FLAGS -fpie" LDFLAGS="-pie -Wl,-z,relro,-z,now" -%endif - -sed -i 's|/etc/smartmontools/sysconfig|/etc/sysconfig|g' smartd.service %install %make_install @@ -62,17 +56,6 @@ mkdir -p $RPM_BUILD_ROOT%{_sharedstatedir}/%{name} %preun %systemd_preun smartd.service -%pre -if [ $1 = 2 ] # only during update -then - # for Fedora 19-22 - if [ -f %{_sysconfdir}/smartd.conf -a ! -e %{_sysconfdir}/%name ] - then - mkdir -p %{_sysconfdir}/%{name} - cp -p %{_sysconfdir}/smartd.conf %{_sysconfdir}/%{name} - fi -fi - %post %systemd_post smartd.service @@ -99,6 +82,11 @@ fi %{_sharedstatedir}/%{name} %changelog +* Fri Apr 12 2019 Daniel Axelrod - 1:7.0-6 +- Remove unused patches +- Drop pre script for migrating from unsupported Fedora versions +- Replace sed with configure switch + * Wed Apr 03 2019 Michal Hlavinka - 1:7.0-5 - revert smartd_warning related changes