So I should raise a patch that removes the lvmetad initscript and the references to it in the initscripts lfs and rootfile, correct? Regards, Adolf. On 09/05/2023 10:01, Michael Tremer wrote: > This is a service that caches any meta information about the LVM arrays. > > At some point, we decided to run it by default, because it makes any block operations a little bit faster. > > The change log states that it has been removed, so we simply need to drop this line. I do not think that this will cause any other changes for us. > > -Michael > >> On 9 May 2023, at 08:51, Arne Fitzenreiter wrote: >> >> This patch remove lvmetad but there is still an initskript that try to start it. >> I don't know what this does but it give an error at boot. >> >> Arne >> >> >> Am 2023-05-02 19:53, schrieb Adolf Belka: >>> - Update from version 2.02.188 to 2.03.21 >>> - Update of rootfile >>> - Changelog >>> version 2.03.21 - 21st April 2023 >>> Fix activation of vdo-pool for with 0 length headers (converted pools). >>> Avoid printing internal init messages when creation integration devices. >>> Allow (write)cache over raid+integrity LV. >>> version 2.03.20 - 21st March 2023 >>> Fix segfault if using -S|--select with log/report_command_log=1 setting. >>> Configure now fails when requested lvmlockd dependencies are missing. >>> Add some configure Gentoo enhancements for static builds. >>> version 2.03.19 - 21st February 2023 >>> Configure supports --with-systemd-run executed from udev rules. >>> Enhancement for build with MuslC systemd and non-bash system shells (dash). >>> Do not reset SYSTEMD_READY variable in udev for PVs on MD and loop devices. >>> Ensure udev is processing origin LV before its thick snapshots LVs. >>> Fix and improve runtime memory size detection for VDO volumes. >>> version 2.03.18 - 22nd December 2022 >>> Fix issues reported by coverity scan. >>> Fix warning for thin pool overprovisioning on lvextend (2.03.17). >>> Add support for writecache metadata_only and pause_writeback settings. >>> Fix missing error messages in lvmdbusd. >>> Version 2.03.17 - 10th November 2022 >>> Add new options (--fs, --fsmode) for FS handling when resizing LVs. >>> Fix 'lvremove -S|--select LV' to not also remove its historical LV >>> right away. >>> Fix lv_active field type to binary so --select and --binary applies properly. >>> Switch to use mallinfo2 and use it only with glibc. >>> Error out in lvm shell if using a cmd argument not supported in the shell. >>> Fix lvm shell's lastlog command to report previous pre-command failures. >>> Extend VDO and VDOPOOL without flushing and locking fs. >>> Add --valuesonly option to lvmconfig to print only values without keys. >>> Updates configure with recent autoconf tooling. >>> Fix lvconvert --test --type vdo-pool execution. >>> Add json_std output format for more JSON standard compliant version >>> of output. >>> Fix vdo_slab_size_mb value for converted VDO volume. >>> Fix many corner cases in device_id, including handling of S/N duplicates. >>> Fix various issues in lvmdbusd. >>> Version 2.03.16 - 18th May 2022 >>> Fix segfault when handling selection with historical LVs. >>> Add support --vdosettings with lvcreate, lvconvert, lvchange. >>> Filtering multipath devices respects blacklist setting from multipath >>> configuration. >>> lvmdevices support for removing by device id using --deviceidtype and >>> --deldev. >>> Display writecache block size with lvs -o writecache_block_size. >>> Improve cachesettings description in man lvmcache. >>> Fix lossing of delete message on thin-pool extension. >>> Version 2.03.15 - 07th February 2022 >>> Remove service based autoactivation. global/event_activation = 0 is NOOP. >>> Improve support for metadata profiles for --type writecache. >>> Use cache or active DM device when available with new kernels. >>> Introduce function to utilize UUIDs from DM_DEVICE_LIST. >>> Increase some hash table size to better support large device sets. >>> Version 2.03.14 - 20th October 2021 >>> Device scanning is skipping directories on different filesystems. >>> Print info message with too many or too large archived files. >>> Reduce metadata readings during scanning phase. >>> Optimize computation of crc32 check sum with multiple PVs. >>> Enhance recover path on cache creation failure. >>> Filter out unsupported MQ/SMQ cache policy setting. >>> Fix memleak in mpath filter. >>> Support newer location for VDO statistics. >>> Add support for VDO async-unsafe write policy. >>> Improve lvm_import_vdo script. >>> Support VDO LV with lvcreate -ky. >>> Fix lvconvert for VDO LV bigger then 2T. >>> Create VDO LVs automatically without zeroing. >>> Rename vdoimport to lvm_import_vdo. >>> Version 2.03.13 - 11th August 2021 >>> Changes in udev support: >>> - obtain_device_list_from_udev defaults to 0. >>> - see devices/external_device_info_source, >>> devices/obtain_device_list_from_udev, and devices/multipath_wwids_file help >>> in lvm.conf >>> Fix devices file handling of loop with deleted backing file. >>> Fix devices file handling of scsi_debug WWIDs. >>> Fix many static analysis issues. >>> Support --poolmetadataspare with vgsplit and vgmerge. >>> Fix detection of active components of external origin volume. >>> Add vdoimport tool to support conversion of VDO volumes. >>> Support configurable allocation/vdo_pool_header_size. >>> Fix handling of lvconvert --type vdo-pool --virtualsize. >>> Simplified handling of archive() and backup() internal calls. >>> Add 'idm' locking type for IDM lock manager. >>> Fix load of kvdo target when it is not present in memory (2.03.12). >>> Version 2.03.12 - 07th May 2021 >>> Allow attaching cache to thin data volume. >>> Fix memleak when generating list of outdated pvs. >>> Better hyphenation usage in man pages. >>> Replace use of deprecated security_context_t with char*. >>> Configure supports AIO_LIBS and AIO_CFLAGS. >>> Improve build process for static builds. >>> New --setautoactivation option to modify LV or VG auto activation. >>> New metadata based autoactivation property for LVs and VGs. >>> Improve signal handling with lvmpolld. >>> Signal handler can interrupt command also for SIGTERM. >>> Lvreduce --yes support. >>> Add configure option --with/out-symvers for non-glibc builds. >>> Report error when the filesystem is missing on fsadm resized volume. >>> Handle better blockdev with --getsize64 support for fsadm. >>> Do not include editline/history.h when using editline library. >>> Support error and zero segtype for thin-pool data for testing. >>> Support mixed extension for striped, error and zero segtypes. >>> Support resize also for stacked virtual volumes. >>> Skip dm-zero devices just like with dm-error target. >>> Reduce ioctl() calls when checking target status. >>> Merge polling does not fail, when LV is found to be already merged. >>> Poll volumes with at least 100ms delays. >>> Do not flush dm cache when cached LV is going to be removed. >>> New lvmlockctl_kill_command configuration option. >>> Support interruption while waiting on device close before deactivation. >>> Flush thin-pool messages before removing more thin volumes. >>> Improve hash function with less collisions and make it faster. >>> Reduce ioctl count when deactivating volumes. >>> Reduce number of metadata parsing. >>> Enhance performance of lvremove and vgremove commands. >>> Support interruption when taking archive and backup. >>> Accelerate large lvremoves. >>> Speedup search for cached device nodes. >>> Speedup command initialization. >>> Add devices file feature, off by default for now. >>> Support extension of writecached volumes. >>> Fix problem with unbound variable usage within fsadm. >>> Fix IMSM MD RAID detection on 4k devices. >>> Check for presence of VDO target before starting any conversion. >>> Support metatadata profiles with volume VDO pool conversions. >>> Support -Zn for conversion of already formated VDO pools. >>> Avoid removing LVs on error path of lvconvert during creation volumes. >>> Fix crashing lvdisplay when thin volume was waiting for merge. >>> Support option --errorwhenfull when converting volume to thin-pool. >>> Improve thin-performance profile support conversion to thin-pool. >>> Add workaround to avoid read of internal 'converted' devices. >>> Prohibit merging snapshot into the read-only thick snapshot origin. >>> Restore support for flipping rw/r permissions for thin snapshot origin. >>> Support resize of cached volumes. >>> Disable autoactivation with global/event_activation=0. >>> Check if lvcreate passes read_only_volume_list with tags and skips zeroing. >>> Allocation prints better error when metadata cannot fit on a single PV. >>> Pvmove can better resolve full thin-pool tree move. >>> Limit pool metadata spare to 16GiB. >>> Improves conversion and allocation of pool metadata. >>> Support thin pool metadata 15.88GiB, adds 64MiB, thin_pool_crop_metadata=0. >>> Enhance lvdisplay to report raid available/partial. >>> Support online rename of VDO pools. >>> Improve removal of pmspare when last pool is removed. >>> Fix problem with wiping of converted LVs. >>> Fix memleak in scanning (2.03.11). >>> Fix corner case allocation for thin-pools. >>> Version 2.03.11 - 08th January 2021 >>> Fix pvck handling MDA at offset different from 4096. >>> Partial or degraded activation of writecache is not allowed. >>> Enhance error handling for fsadm and handle correct fsck result. >>> Dmeventd lvm plugin ignores higher reserved_stack lvm.conf values. >>> Support using BLKZEROOUT for clearing devices. >>> Support interruption when wipping LVs. >>> Support interruption for bcache waiting. >>> Fix bcache when device has too many failing writes. >>> Fix bcache waiting for IO completion with failing disks. >>> Configure use own python path name order to prefer using python3. >>> Add configure --enable-editline support as an alternative to readline. >>> Enhance reporting and error handling when creating thin volumes. >>> Enable vgsplit for VDO volumes. >>> Lvextend of vdo pool volumes ensure at least 1 new VDO slab is added. >>> Use revert_lv() on reload error path after vg_revert(). >>> Configure --with-integrity enabled. >>> Restore lost signal blocking while VG lock is held. >>> Improve estimation of needed extents when creating thin-pool. >>> Use extra 1% when resizing thin-pool metadata LV with --use-policy. >>> Enhance --use-policy percentage rounding. >>> Configure --with-vdo and --with-writecache as internal segments. >>> Improving VDO man page examples. >>> Allow pvmove of writecache origin. >>> Report integrity fields. >>> Integrity volumes defaults to journal mode. >>> Switch code base to use flexible array syntax. >>> Fix 64bit math when calculation cachevol size. >>> Preserve uint32_t for seqno handling. >>> Switch from mmap to plain read when loading regular files. >>> Update lvmvdo man page and better explain DISCARD usage. >>> Version 2.03.10 - 09th August 2020 >>> Add writecache and integrity support to lvmdbusd. >>> Generate unique cachevol name when default required from lvcreate. >>> Converting RAID1 volume to one with same number of legs now succeeds with a >>> warning. >>> Fix conversion to raid from striped lagging type. >>> Fix conversion to 'mirrored' mirror log with larger regionsize. >>> Zero pool metadata on allocation (disable with allocation/zero_metadata=0). >>> Failure in zeroing or wiping will fail command (bypass with -Zn, -Wn). >>> Add lvcreate of new cache or writecache lv with single command. >>> Fix running out of free buffers for async writing for larger writes. >>> Add integrity with raid capability. >>> Fix support for lvconvert --repair used by foreign apps (i.e. Docker). >>> Version 2.03.09 - 26th March 2020 >>> Fix formatting of vdopool (vdo_slab_size_mb was smaller by 2 bits). >>> Fix showing of a dm kernel error when uncaching a volume with cachevol. >>> Version 2.03.08 - 11th February 2020 >>> Prevent problematic snapshots of writecache volumes. >>> Add error handling for failing allocation in _reserve_area(). >>> Fix memleak in syncing of internal cache. >>> Fix pvck dump_current_text memleak. >>> Fix lvmlockd result code on error path for _query_lock_lv(). >>> Update pvck man page and help output. >>> Reject invalid writecache high/low_watermark setting. >>> Report writecache status. >>> Accept more output lines from vdo_format. >>> Prohibit reshaping of stacked raid LVs. >>> Avoid running cache input arg validation when creating vdo pool. >>> Prevent raid reshaping of stacked volumes. >>> Added VDO lvmdbusd methods for enable/disable compression & dedupe. >>> Added VDO lvmdbusd method for converting LV to VDO pool. >>> Version 2.03.07 - 30th November 2019 >>> Subcommand in vgck for repairing headers and metadata. >>> Ensure minimum required region size on striped RaidLV creation. >>> Fix resize of thin-pool with data and metadata of different segtype. >>> Improve mirror type leg splitting. >>> Improve error path handling in daemons on shutdown. >>> Fix activation order when removing merged snapshot. >>> Experimental VDO support for lvmdbusd. >>> Version 2.03.06 - 23rd October 2019 >>> Add _cpool suffix to cache-pool LV name when used by caching LV. >>> No longer store extra UUID for cmeta and cdata cachevol layer. >>> Enhance activation of cache devices with cachevols. >>> Add _cvol in list of protected suffixes and start use it with DM UUID. >>> Rename LV converted to cachevol to use _cvol suffix. >>> Use normal LVs for wiping of cachevols. >>> Reload cleanered cache DM only with cleaner policy. >>> Fix cmd return when zeroing of cachevol fails. >>> Extend lvs to show all VDO properties. >>> Preserve VDO write policy with vdopool. >>> Increase default vdo bio threads to 4. >>> Continue report when cache_status fails. >>> Add support for DM_DEVICE_GET_TARGET_VERSION into device_mapper. >>> Fix cmirrord usage of header files from device_mapper subdir. >>> Allow standalone activation of VDO pool just like for thin-pools. >>> Activate thin-pool layered volume as 'read-only' device. >>> Ignore crypto devices with UUID signature CRYPT-SUBDEV. >>> Enhance validation for thin and cache pool conversion and swapping. >>> Improve internal removal of cached devices. >>> Synchronize with udev when dropping snapshot. >>> Add missing device synchronization point before removing pvmove node. >>> Correctly set read_ahead for LVs when pvmove is finished. >>> Remove unsupported OPTIONS+="event_timeout" udev rule from 11-dm-lvm.rules. >>> Prevent creating VGs with PVs with different logical block sizes. >>> Fix metadata writes from corrupting with large physical block size. >>> Version 2.03.05 - 15th June 2019 >>> Fix command definition for pvchange -a. >>> Add vgck --updatemetadata command that will repair metadata problems. >>> Improve VG reading to work if one good copy of metadata is found. >>> Report/display/scan commands that read VGs will no longer write/repair. >>> Move metadata repairs from VG reading to VG writing. >>> Add config setting md_component_checks to control MD component checks. >>> Add end of device MD component checks when dev has no udev info. >>> Version 2.03.04 - 10th June 2019 >>> Remove unused_duplicate_devs from cmd causing segfault in dmeventd. >>> Version 2.03.03 - 07th June 2019 >>> Report no_discard_passdown for cache LVs with lvs -o+kernel_discards. >>> Add pvck --dump option to extract metadata. >>> Fix signal delivery checking race in libdaemon (lvmetad). >>> Add missing Before=shutdown.target to LVM2 services to fix shutdown ordering. >>> Skip autoactivation for a PV when PV size does not match device size. >>> Remove first-pvscan-initialization which should no longer be needed. >>> Add remote refresh through lvmlockd/dlm for shared LVs after lvextend. >>> Ignore foreign and shared PVs for pvscan online files. >>> Add config setting to control fields in debug file and verbose output. >>> Add command[pid] and timestamp to debug file and verbose output. >>> Fix missing growth of _pmsmare volume when extending _tmeta volume. >>> Automatically grow thin metadata, when thin data gets too big. >>> Add synchronization with udev before removing cached devices. >>> Add support for caching VDO LVs and VDOPOOL LVs. >>> Add support for vgsplit with cached devices. >>> Query mpath device only once per command for its state. >>> Use device INFO instead of STATUS when checking for mpath device uuid. >>> Change default io_memory_size from 4 to 8 MiB. >>> Add config setting io_memory_size to set bcache size. >>> Fix pvscan autoactivation for concurrent pvscans. >>> Change scan_lvs default to 0 so LVs are not scanned for PVs. >>> Thin-pool selects power-of-2 chunk size by default. >>> Cache selects power-of-2 chunk size by default. >>> Support reszing for VDOPoolLV and VDOLV. >>> Improve -lXXX%VG modifier which improves cache segment estimation. >>> Ensure migration_threshold for cache is at least 8 chunks. >>> Restore missing man info lvcreate --zero for thin-pools. >>> Drop misleadning comment for metadata minimum_io_size for VDO segment. >>> Add device hints to reduce scanning. >>> Introduce LVM_SUPPRESS_SYSLOG to suppress syslog usage by generator. >>> Fix generator quering lvmconfig unpresent config option. >>> Fix memleak on bcache error path code. >>> Fix missing unlock on lvm2 dmeventd plugin error path initialization. >>> Improve Makefile dependency tracking. >>> Move VDO support towards V2 target (6.2) support. >>> Version 2.03.02 - 18th December 2018 >>> Fix missing proper initialization of pv_list struct when adding pv. >>> Fix (de)activation of RaidLVs with visible SubLVs. >>> Prohibit mirrored 'mirror' log via lvcreate and lvconvert. >>> Use sync io if async io_setup fails, or use_aio=0 is set in config. >>> Fix more issues reported by coverity scan. >>> Version 2.03.01 - 31st October 2018 >>> Version 2.03.00 - 10th October 2018 >>> Add hot fix to avoiding locking collision when monitoring thin-pools. >>> Allow raid4 -> linear conversion request. >>> Fix lvconvert striped/raid0/raid0_meta -> raid6 regression. >>> Add 'lvm2-activation-generator:' prefix for kmsg messages logged by >>> generator. >>> Add After=rbdmap.service to {lvm2-activation-net,blk-availability}.service. >>> Reduce max concurrent aios to avoid EMFILE with many devices. >>> Fix lvconvert conversion attempts to linear. >>> Fix lvconvert raid0/raid0_meta -> striped regression. >>> Fix lvconvert --splitmirror for mirror type (2.02.178). >>> Do not pair cache policy and cache metadata format. >>> lvconvert: reject conversions on raid1 LVs with split tracked SubLVs >>> lvconvert: reject conversions on raid1 split tracked SubLVs >>> Add basic creation support for VDO target. >>> Never send any discard ioctl with test mode. >>> Fix thin-pool alloc which needs same PV for data and metadata. >>> Extend list of non-memlocked areas with newly linked libs. >>> Enhance vgcfgrestore to check for active LVs in restored VG. >>> Configure supports --disable-silent-rules for verbose builds. >>> Fix unmonitoring of merging snapshots. >>> Cache can uses metadata format 2 with cleaner policy. >>> Fix check if resized PV can also fit metadata area. >>> Avoid showing internal error in lvs output or pvmoved LVs. >>> Remove clvmd >>> Remove lvmlib (api) >>> Remove lvmetad >>> Use versionsort to fix archive file expiry beyond 100000 files. >>> Signed-off-by: Adolf Belka >>> --- >>> config/rootfiles/common/lvm2 | 16 +++++++++++----- >>> lfs/lvm2 | 6 +++--- >>> 2 files changed, 14 insertions(+), 8 deletions(-) >>> diff --git a/config/rootfiles/common/lvm2 b/config/rootfiles/common/lvm2 >>> index 258f3201f..bd1329e54 100644 >>> --- a/config/rootfiles/common/lvm2 >>> +++ b/config/rootfiles/common/lvm2 >>> @@ -9,15 +9,17 @@ etc/lvm/lvm.conf >>> #etc/lvm/profile/metadata_profile_template.profile >>> #etc/lvm/profile/thin-generic.profile >>> #etc/lvm/profile/thin-performance.profile >>> +#etc/lvm/profile/vdo-small.profile >>> lib/udev/rules.d/10-dm.rules >>> lib/udev/rules.d/11-dm-lvm.rules >>> lib/udev/rules.d/13-dm-disk.rules >>> -lib/udev/rules.d/69-dm-lvm-metad.rules >>> +lib/udev/rules.d/69-dm-lvm.rules >>> lib/udev/rules.d/95-dm-notify.rules >>> #usr/include/libdevmapper.h >>> #usr/lib/libdevmapper.so >>> usr/lib/libdevmapper.so.1.02 >>> #usr/lib/pkgconfig/devmapper.pc >>> +#usr/libexec/lvresize_fs_helper >>> usr/sbin/blkdeactivate >>> usr/sbin/dmsetup >>> usr/sbin/dmstats >>> @@ -28,11 +30,11 @@ usr/sbin/lvcreate >>> usr/sbin/lvdisplay >>> usr/sbin/lvextend >>> usr/sbin/lvm >>> -usr/sbin/lvmconf >>> +usr/sbin/lvm_import_vdo >>> usr/sbin/lvmconfig >>> +usr/sbin/lvmdevices >>> usr/sbin/lvmdiskscan >>> usr/sbin/lvmdump >>> -usr/sbin/lvmetad >>> usr/sbin/lvmsadc >>> usr/sbin/lvmsar >>> usr/sbin/lvreduce >>> @@ -61,6 +63,7 @@ usr/sbin/vgexport >>> usr/sbin/vgextend >>> usr/sbin/vgimport >>> usr/sbin/vgimportclone >>> +usr/sbin/vgimportdevices >>> usr/sbin/vgmerge >>> usr/sbin/vgmknodes >>> usr/sbin/vgreduce >>> @@ -70,11 +73,13 @@ usr/sbin/vgs >>> usr/sbin/vgscan >>> usr/sbin/vgsplit >>> #usr/share/man/man5/lvm.conf.5 >>> +#usr/share/man/man7/lvmautoactivation.7 >>> #usr/share/man/man7/lvmcache.7 >>> #usr/share/man/man7/lvmraid.7 >>> #usr/share/man/man7/lvmreport.7 >>> #usr/share/man/man7/lvmsystemid.7 >>> #usr/share/man/man7/lvmthin.7 >>> +#usr/share/man/man7/lvmvdo.7 >>> #usr/share/man/man8/blkdeactivate.8 >>> #usr/share/man/man8/dmsetup.8 >>> #usr/share/man/man8/dmstats.8 >>> @@ -89,11 +94,11 @@ usr/sbin/vgsplit >>> #usr/share/man/man8/lvm-fullreport.8 >>> #usr/share/man/man8/lvm-lvpoll.8 >>> #usr/share/man/man8/lvm.8 >>> -#usr/share/man/man8/lvmconf.8 >>> +#usr/share/man/man8/lvm_import_vdo.8 >>> #usr/share/man/man8/lvmconfig.8 >>> +#usr/share/man/man8/lvmdevices.8 >>> #usr/share/man/man8/lvmdiskscan.8 >>> #usr/share/man/man8/lvmdump.8 >>> -#usr/share/man/man8/lvmetad.8 >>> #usr/share/man/man8/lvmsadc.8 >>> #usr/share/man/man8/lvmsar.8 >>> #usr/share/man/man8/lvreduce.8 >>> @@ -122,6 +127,7 @@ usr/sbin/vgsplit >>> #usr/share/man/man8/vgextend.8 >>> #usr/share/man/man8/vgimport.8 >>> #usr/share/man/man8/vgimportclone.8 >>> +#usr/share/man/man8/vgimportdevices.8 >>> #usr/share/man/man8/vgmerge.8 >>> #usr/share/man/man8/vgmknodes.8 >>> #usr/share/man/man8/vgreduce.8 >>> diff --git a/lfs/lvm2 b/lfs/lvm2 >>> index 7e327a021..5b39f05f5 100644 >>> --- a/lfs/lvm2 >>> +++ b/lfs/lvm2 >>> @@ -1,7 +1,7 @@ >>> ############################################################################### >>> # # >>> # IPFire.org - A linux based firewall # >>> -# Copyright (C) 2007-2018 IPFire Team # >>> +# Copyright (C) 2007-2023 IPFire Team # >>> # # >>> # 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 # >>> @@ -24,7 +24,7 @@ >>> include Config >>> -VER = 2.02.188 >>> +VER = 2.03.21 >>> THISAPP = LVM2.$(VER) >>> DL_FILE = $(THISAPP).tgz >>> @@ -40,7 +40,7 @@ objects = $(DL_FILE) >>> $(DL_FILE) = $(DL_FROM)/$(DL_FILE) >>> -$(DL_FILE)_BLAKE2 = >>> bed90c8454cd4b20fdeec6dcbf5a9f97c9310671aea3b2252f8069cfa439fcb050f5ad95f928a7125a1734a4dc5ac985da99a4a570538e377a7205191a505476 >>> +$(DL_FILE)_BLAKE2 = >>> 529bc01b3d1ba6207c9ddc95309b39e6293fcd0286334240b9fdc076da0b7bc7e026338ec0243564ec153f2fb5009014149c3f8e0db0cd47a29418af62068728 >>> install : $(TARGET) > -- Sent from my laptop