From 3505e951b9a7ac613216498b4864002376c10d20 Mon Sep 17 00:00:00 2001 From: Gyorgy Sarvari Date: Sat, 27 Sep 2025 22:30:19 +0200 Subject: smartmontools: upgrade 7.4 -> 7.5 Changelog: - CI and release builds are now reproducible if same SOURCE_DATE_EPOCH, build recipes and toolchains are used. - smartctl '-j -A': New JSON value 'endurance_used' (ATA/SCSI/NVMe). - smartctl '-j -A': New JSON value 'spare_available' (ATA/NVMe). - smartctl '-j -i': Re-added the JSON value 'model_name' also for SCSI devices (regression). - smartctl '-j -c': NVMe support. - smartctl '-j -n ...': New JSON values 'power_mode.*' (ATA only). - smartctl '-H -A': Support for NVMe SMART/Health Information per namespace. - smartctl '-i': ATA ACS-6 updates. - smartctl '-x': No longer includes '-g wcreorder'. - smartctl '-x', '-l scterc': No longer returns exit status 4 if SCT ERC is not supported by the device. - smartctl '-l error': No longer prints bogus ATA error log entries if the error index is nonzero but the error count is zero. - smartctl '-l ssd': Fixed corruption of the output of the SCSI Format Status log page. - smartctl '-l ssd': Now detects 'no format since manufacture' from the SCSI Format Status log page. - smartctl '-l farm': Fixed the unit of 'Write Power On' time. - smartctl '-l farm': Fixed the byte order of ATA 'Assembly Date'. - smartctl '-l farm': Fixed a possible segfault. - smartctl '-l farm -q noserial': Suppresses serial and WWN also from FARM. - smartctl '-l farm -T permissive': Overrides false negative FARM support check for rebranded drives. - smartctl '-t TEST': Fixed self-tests of single namespace NVMe devices. - smartd '-A': NVMe attribute log support. - smartd: Ignores NSID in duplicate check of single namespace devices. - smartd: No longer issues LOG_CRIT warnings for 'Set Feature' related NVMe error information log entries. - smartd: No longer hangs on systems with large file descriptor limits. - smartd: No longer logs invalid "old test ... not run" messages if staggered self-tests are used. - smartd.conf '-l selftest[sts] -s ...': NVMe self-test support. - smartd.conf '-H MASK': Ability to ignore specific bits of NVMe SMART/Health value 'Critical Warning'. - smartd.conf '-p': Checks NVMe SMART/Health value 'Available Spare'. - smartd.conf '-u [-f]': Checks NVMe SMART/Health values 'Percentage Used' and 'Media and Data Integrity Errors'. - smartd.conf '-W ...': No longer includes individual sensors in NVMe temperature check as some devices report other values there. - ATA: Device type '-d jmb39x-q2,N' for another JMB39x protocol variant used by QNAP-TR002 NAS devices. - SCSI: Fixed range checks of mode page offset and VPD inquiry. - SCSI: Fixed buffer overflow parsing of VPD page. - SCSI: Fixed handling of multiple designators in VPD page. - USB/NVMe: '-d sntjmicron' no longer triggers USB resets on queries of the self-test log. - USB/NVMe: '-d sntasmedia' now supports log pages > 512 bytes. - USB/NVMe/SAT: New experimental NVMe/SAT autodetection options '-d snt*/sat'. - Fixed segfault on missing option argument on systems using musl libc. - HDD, SSD and USB additions to drive database. - automake < 1.13 are no longer supported. - Custom make rules are now silenced if 'make V=0' is used. - Enhanced makefile targets 'dist-*' to create reproducible source tarballs if SOURCE_DATE_EPOCH is set. - The makefile no longer uses GNU make specific syntax elements (exception: reproducible builds for macOS). - Dropped support for platforms without 'sigaction()'. - configure: Now also detects MidnightBSD. - configure: Dropped option '--with-signal-func'. - configure: Default for '--with-nvme-devicescan' is now 'yes' also on NetBSD. - Version information is now also set if build from GH R/O mirror. - Linux: 'smartd.service' now avoids a warning about an unset environment variable. - Linux: Dropped autodetection of deprecated device type '-d marvell'. - macOS: Support for reproducible builds of the DMG image. - OpenBSD: NVMe support. - Windows: Increased WMI timeout. - Windows: Support for reproducible builds of the installer. - Windows: Uninstaller is no longer damaged if the installer is signed. - Windows 'update-smartd-drivedb.ps1': Fixed call of 'gpg.exe' if it appears more than once in the PATH. - Windows 'update-smartd-drivedb.ps1 -Verbose': Now also prints the download command. Signed-off-by: Gyorgy Sarvari Signed-off-by: Khem Raj --- .../smartmontools/smartmontools_7.4.bb | 52 ---------------------- .../smartmontools/smartmontools_7.5.bb | 52 ++++++++++++++++++++++ 2 files changed, 52 insertions(+), 52 deletions(-) delete mode 100644 meta-oe/recipes-extended/smartmontools/smartmontools_7.4.bb create mode 100644 meta-oe/recipes-extended/smartmontools/smartmontools_7.5.bb diff --git a/meta-oe/recipes-extended/smartmontools/smartmontools_7.4.bb b/meta-oe/recipes-extended/smartmontools/smartmontools_7.4.bb deleted file mode 100644 index bd92b16299..0000000000 --- a/meta-oe/recipes-extended/smartmontools/smartmontools_7.4.bb +++ /dev/null @@ -1,52 +0,0 @@ -SUMMARY = "Control and monitor storage systems using S.M.A.R.T" -DESCRIPTION = "\ -The smartmontools package contains two utility programs (smartctl \ -and smartd) to control and monitor storage systems using the Self-\ -Monitoring, Analysis and Reporting Technology System (SMART) built \ -into most modern ATA and SCSI hard disks. In many cases, these \ -utilities will provide advanced warning of disk degradation and failure." - -HOMEPAGE = "http://smartmontools.sourceforge.net/" -SECTION = "console/utils" - -LICENSE = "GPL-2.0-only" -LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" - -SRC_URI = "${SOURCEFORGE_MIRROR}/smartmontools/smartmontools-${PV}.tar.gz \ - file://initd.smartd \ - file://smartmontools.default \ - file://smartd.service \ - file://0001-configure.ac-Define-SOURCE_DATE_EPOCH-in-CPPFLAGS.patch \ - " - -PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'libcap-ng selinux', d)}" -PACKAGECONFIG[libcap-ng] = "--with-libcap-ng=yes,--with-libcap-ng=no,libcap-ng" -PACKAGECONFIG[selinux] = "--with-selinux=yes,--with-selinux=no,libselinux" - -SRC_URI[sha256sum] = "e9a61f641ff96ca95319edfb17948cd297d0cd3342736b2c49c99d4716fb993d" - -inherit autotools update-rc.d systemd - -SYSTEMD_SERVICE:${PN} = "smartd.service" -SYSTEMD_AUTO_ENABLE = "disable" - -do_install:append () { - #install the init.d/smartd - install -d ${D}${sysconfdir}/init.d - install -p -m 0755 ${UNPACKDIR}/initd.smartd ${D}${sysconfdir}/init.d/smartd - install -d ${D}${sysconfdir}/default - install -p -m 0644 ${UNPACKDIR}/smartmontools.default ${D}${sysconfdir}/default/smartmontools - - #install systemd service file - install -d ${D}${systemd_unitdir}/system - install -m 0644 ${UNPACKDIR}/smartd.service ${D}${systemd_unitdir}/system - sed -i -e 's,@BASE_BINDIR@,${base_bindir},g' \ - -e 's,@SYSCONFDIR@,${sysconfdir},g' \ - -e 's,@SBINDIR@,${sbindir},g' \ - ${D}${systemd_unitdir}/system/smartd.service -} - -INITSCRIPT_NAME = "smartd" -INITSCRIPT_PARAMS = "start 60 2 3 4 5 . stop 60 0 1 6 ." - -RRECOMMENDS:${PN} += "s-nail" diff --git a/meta-oe/recipes-extended/smartmontools/smartmontools_7.5.bb b/meta-oe/recipes-extended/smartmontools/smartmontools_7.5.bb new file mode 100644 index 0000000000..6f3bf49c07 --- /dev/null +++ b/meta-oe/recipes-extended/smartmontools/smartmontools_7.5.bb @@ -0,0 +1,52 @@ +SUMMARY = "Control and monitor storage systems using S.M.A.R.T" +DESCRIPTION = "\ +The smartmontools package contains two utility programs (smartctl \ +and smartd) to control and monitor storage systems using the Self-\ +Monitoring, Analysis and Reporting Technology System (SMART) built \ +into most modern ATA and SCSI hard disks. In many cases, these \ +utilities will provide advanced warning of disk degradation and failure." + +HOMEPAGE = "http://smartmontools.sourceforge.net/" +SECTION = "console/utils" + +LICENSE = "GPL-2.0-only" +LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" + +SRC_URI = "${SOURCEFORGE_MIRROR}/smartmontools/smartmontools-${PV}.tar.gz \ + file://initd.smartd \ + file://smartmontools.default \ + file://smartd.service \ + file://0001-configure.ac-Define-SOURCE_DATE_EPOCH-in-CPPFLAGS.patch \ + " + +PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'libcap-ng selinux', d)}" +PACKAGECONFIG[libcap-ng] = "--with-libcap-ng=yes,--with-libcap-ng=no,libcap-ng" +PACKAGECONFIG[selinux] = "--with-selinux=yes,--with-selinux=no,libselinux" + +SRC_URI[sha256sum] = "690b83ca331378da9ea0d9d61008c4b22dde391387b9bbad7f29387f2595f76e" + +inherit autotools update-rc.d systemd + +SYSTEMD_SERVICE:${PN} = "smartd.service" +SYSTEMD_AUTO_ENABLE = "disable" + +do_install:append () { + #install the init.d/smartd + install -d ${D}${sysconfdir}/init.d + install -p -m 0755 ${UNPACKDIR}/initd.smartd ${D}${sysconfdir}/init.d/smartd + install -d ${D}${sysconfdir}/default + install -p -m 0644 ${UNPACKDIR}/smartmontools.default ${D}${sysconfdir}/default/smartmontools + + #install systemd service file + install -d ${D}${systemd_unitdir}/system + install -m 0644 ${UNPACKDIR}/smartd.service ${D}${systemd_unitdir}/system + sed -i -e 's,@BASE_BINDIR@,${base_bindir},g' \ + -e 's,@SYSCONFDIR@,${sysconfdir},g' \ + -e 's,@SBINDIR@,${sbindir},g' \ + ${D}${systemd_unitdir}/system/smartd.service +} + +INITSCRIPT_NAME = "smartd" +INITSCRIPT_PARAMS = "start 60 2 3 4 5 . stop 60 0 1 6 ." + +RRECOMMENDS:${PN} += "s-nail" -- cgit v1.2.3-54-g00ecf