# changelog

author: Alexander Bokovoy <abokovoy@redhat.com> - 4.6.0-3
changelog:
  - auth/credentials: Always set the the realm if we set the principal from the ccache
  - resolves: #1430761 - credentials_crb5: use gss_acquire_cred for client-side GSSAPI use case


author: Alexander Bokovoy <abokovoy@redhat.com> - 4.6.0-4
changelog:
  - Export arcfour_crypt_blob to Python as samba.crypto.arcfour_encrypt
  - Makes possible to run trust to AD in FreeIPA in FIPS mode


author: Alexander Bokovoy <abokovoy@redhat.com> - 4.7.0-0.5.rc1
changelog:
  - Convert more rpc modules to python3
  - Explicitly specify Python artifacts in the spec to be able to catch unpackaged ones
  - Split 'make test' Python code into separate python2-samba-test/python3-samba-test sub-packages
  - Remove embedded python2-dns version, require python{2,3}-dns instead


author: Alexander Bokovoy <abokovoy@redhat.com> - 4.7.0-0.6.rc1
changelog:
  - Use Python 2 explicitly for samba-tool and other Python-based tools
  - Install samba.service as it is required for the AD DC case


author: Guenther Deschner <gdeschner@redhat.com> - 4.7.0-12
changelog:
  - Update to Samba 4.7.0
  - resolves: #1493441 - Security fix for CVE-2017-12150 CVE-2017-12151 CVE-2017-12163


author: Alexander Bokovoy <abokovoy@redhat.com> - 4.7.0-13
changelog:
  - Move /usr/lib{64,}/samba/libdsdb-garbage-collect-tombstones-samba4.so to samba-dc-libs
  - Rebuild in rawhide against new krb5 1.16 and docbook-xml


author: Alexander Bokovoy <abokovoy@redhat.com> - 4.7.0-18
changelog:
  - Force samba-dc to use the same libldb version as LDB modules compiled
  - resolves: #1507420 - LDB / Samba module version mismatch


author: Guenther Deschner <gdeschner@redhat.com> - 4.8.0-7
changelog:
  - resolves: #1554754, #1554756 - Security fixes for CVE-2018-1050 CVE-2018-1057
  - resolves: #1555112 - Update to Samba 4.8.0


author: Petr Viktorin <pviktori@redhat.com> - 4.8.3-2
changelog:
  - Use %{__python2}, not "python", as the Python2 interpreter
  - Add workaround to allow building with Python 2
  - Change unversioned python macros to python2
  - Disable gluster temporarily


author: Andreas Schneider <asn@redhat.com> - 4.9.0rc3-3
changelog:
  - related: #1614232 - Update to Samba 4.9.0rc3
  - resolves: #1554753 - Fix CVE-2018-1050
  - resolves: #1617912 - Fix CVE-2018-10858
  - resolves: #1617913 - Fix CVE-2018-10918
  - resolves: #1617914 - Fix CVE-2018-10919
  - resolves: #1617915 - Fix CVE-2018-1139
  - resolves: #1612522 - Manpage fixes


author: Andreas Schneider <asn@redhat.com> - 4.9.0rc5-3
changelog:
  - related: #1614232 - Update to Samba 4.9.0rc5
  - resolves: #1610909 - Re-enable glubsterfs vfs module
  - resolves: #1624170 - Build with -fstack-protectore-strong if available
  - resolves: #1602685 - Fixed issues found by covscan


author: Alexander Bokovoy <abokovoy@redhat.com> - 4.9.1-3
changelog:
  - Temporarily remove smbtorture from samba-test due to Python 2 linkage
  - related: #1609661 - samba-test package cannot be installed due to unresolved dependencies


author: Andreas Schneider <asn@redhat.com> - 4.9.1-5
changelog:
  - resolves: #1644327 - Segfault if wrong 'passdb backend' is configured
  - resolves: #1647959 - Segfault in the debug system with hardended build


author: Andreas Schneider <asn@redhat.com> - 4.9.1-6
changelog:
  - resolves: #1642092 - Harden [homes] share export
  - resolves: #1648846 - Fix out of bound array access in ctdb
  - resolves: #1657266 - Fix tmp directory creation in /run


author: Andreas Schneider <asn@redhat.com> - 4.9.1-7
changelog:
  - resolves: #1658690 - Add smbc_setOptionProtocols()
  - resolves: #1658678 - Fix spoolss client operations against Windows


author: Andreas Schneider <asn@redhat.com> - 4.10.4-0
changelog:
  - related: #1638001 - Rebase to Samba version 4.10.4
  - resolves: #1597298 - Build Samba with python3
  - resolves: #1658558 - Add 'net ads leave --keep-account' option
  - resolves: #1669004 - Fix systemd status notifications
  - resolves: #1672167 - Fix printing cache timeout in debug output
  - resolves: #1696525 - Fix CVE-2019-3880


author: Andreas Schneider <asn@redhat.com> - 4.10.4-1
changelog:
  - resolves: #1712378 - Fix smbspool CUPS backend
  - resolves: #1696612 - Fix 'net ads join -U admin@parentdomain'


author: Andreas Schneider <asn@redhat.com> - 4.10.4-100
changelog:
  - resolves: #1754575 - Avoid overlinking with librt and libpthread
  - resolves: #1755440 - Fix forest trusts enumeration
  - resolves: #1755445 - Fix CUPS username/password authentication with smbspool


author: Andreas Schneider <asn@redhat.com> - 4.11.2-1
changelog:
  - resolves: #1754409 - Rebase to Samba version 4.11.2
  - resolves: #1776312 - Winbind is not restarted on upgrade
  - resolves: #1764469 - Fix CVE-2019-10218
  - resolves: #1746241 - Fix CVE-2019-10197
  - resolves: #1710980 - Add support for KCM ccache in pam_winbind


author: Andreas Schneider <asn@redhat.com> - 4.11.2-4
changelog:
  - related: #1754409 - Add patch to avoid overlinking with libnsl and libsocket
  - related: #1754409 - Fix permissions for pidl
  - related: #1754409 - Fix logrotate script
  - related: #1754409 - Add missing README files


author: Alexander Bokovoy <abokovoy@redhat.com> - 4.11.2-10
changelog:
  - resolves: #1790353 - Fix access check in DsRGetForestTrustInformation
  - resolves: #1791209 - Fix CVE-2019-14907


author: Andreas Schneider <asn@redhat.com> - 4.11.2-12
changelog:
  - related: #1781232 - Improve debug output of smbclient
  - resolves: #1794461 - Do not return bogus inode numbers in
                         cli_qpathinfo2()/cli_qpathinfo3() for SMB1
  - resolves: #1794442 - Fix segfault in smbd_do_qfilepathinfo()


author: Andreas Schneider <asn@redhat.com> - 4.12.3-0
changelog:
  - resolves: #1817557 - Rebase to version 4.12.3
  - resolves: #1813833 - Fix 'net ads join createupn='


author: Andreas Schneider <asn@redhat.com> - 4.12.3-1
changelog:
  - resolves: #1666737 - Add a new smbc_readdirplus2() function to libsmbclient
  - resolves: #1842844 - Fix GnuTLS priority list for TLS connections


author: Isaac Boukris <iboukris@redhat.com> - 4.12.3-4
changelog:
  - resolves: #1850980 - Add "additional dns hostname" to keytab
  - resolves: #1850981 - Add net-ads-join dnshostname=fqdn option


author: Andreas Schneider <asn@redhat.com> - 4.12.3-5
changelog:
  - resolves: #1823612 - Fix segfault in 'net ads dns gethostbyname'
  - resolves: #1792553 - Fix 'net ads join createcomputer=OU'


author: Andreas Schneider <asn@redhat.com> - 4.12.3-7
changelog:
  - resolves: #1855711 - Fix 'require_membership_of' documentation in
                         pam_winbind manpage


author: Andreas Schneider <asn@redhat.com> - 4.12.3-9
changelog:
  - related: #1817557 - Move DECRPC mdssvc data files to correct package
  - resolves: #1856676 - Fix lookuprids in winbind


author: Andreas Schneider <asn@redhat.com> - 4.13.2-1
changelog:
  - resolves: #1878109 - Rebase Samba to version 4.13.2
  - resolves: #1872833 - Add samba-winexe subpackage
  - resolves: #1891688 - Fix CVE-2020-14323
  - resolves: #1892633 - Fix CVE-2020-14318
  - resolves: #1892639 - Fix CVE-2020-14383
  - resolves: #1879835 - Fix CVE-2020-1472
  - resolves: #1888990 - Update smb.conf manpages to describe how to apply
                         config changes.
  - resolves: #1869702 - Fix %U substitution for 'valid users' option
  - resolves: #1818038 - Improve FIPS compliance


author: Andreas Schneider <asn@redhat.com> - 4.13.2-2
changelog:
  - related: #1869702 - Fix spoolss crash
  - resolves: #1896736 - Fix name lookups of FreeIPA users
  - resolves: #1899113 - Fix DFS links


author: Andreas Schneider <asn@redhat.com> - 4.13.3-3
changelog:
  - resolves: #1924615 - Fix a memcache bug when cache is full
  - resolves: #1924571 - Ensure that libwbclient has been updated before
                         restarting services


author: Andreas Schneider <asn@redhat.com> - 4.14.4-2
changelog:
  - resolves: rhbz#1944657 - Update to version 4.14.4
  - resolves: rhbz#1949445 - Fix CVE-2021-20254
  - resolves: rhbz#1947945 - Fix libsmbldap.so.2 not being a symbolic link
  - resolves: rhbz#1908506 - Fix creating the gencache user directory
  - resolves: rhbz#1901029 - Build the vfs_io_uring module


author: Andreas Schneider <asn@redhat.com> - 4.14.4-0
changelog:
  - related: rhbz#1944657 - Update to version 4.14.5
  - resolves: rhbz#1969787 - Fix memory leak in RPC server
  - resolves: rhbz#1954974 - Validate smb.conf option for domain members with testparm
  - resolves: rhbz#1963298 - Fix smbd trying to delete files with wrong permissions
  - resolves: rhbz#1890008 - Update rpcclient manpage to list all available commands
  - resolves: rhbz#1857254 - Update smbcacls manpage to document inhertance flags


author: Andreas Schneider <asn@redhat.com> - 4.14.4-1
changelog:
  - resolves: rhbz#1974792 - Create a subpackage for vfs-io-uring
  - resolves: rhbz#1965397 - Raise log level for dfs ENOENT debug message


author: Andreas Schneider <asn@redhat.com> - 4.14.4-3
changelog:
  - resolves: rhbz#2019662 - Fix CVE-2016-2124
  - resolves: rhbz#2019668 - Fix CVE-2021-23192
  - resolves: rbhz#2019674 - Fix CVE-2020-25717


author: Pavel Filipenský <pfilipen@redhat.com> - 4.15.2-1
changelog:
  - resolves: rhbz#2013596 - Rebase to version 4.15.2
  - resolves: rhbz#1999294 - Remove noisy error message in winbindd
  - resolves: rhbz#1958881 - Don't require winbind being online for krb5 auth
                             with one-way trusts
  - resolves: rhbz#2019461 - Fix deleting directories with dangling symlinks


author: Pavel Filipenský <pfilipen@redhat.com> - 4.15.3-1
changelog:
  - related: rhbz#2013596 - Rebase to version 4.15.3
  - resolves: rhbz#2028029 - Fix possible null pointer dereference in winbind
  - resolves: rhbz#1912549 - Winexe: Kerberos Auth is respected via --use-kerberos=desired


author: Pavel Filipenský <pfilipen@redhat.com> - 4.15.4-0
changelog:
  - Update to Samba 4.15.4
  - related: rhbz#2013596 - Rebase Samba to the the latest 4.15.x release
  - resolves: rhbz#2039153 - Fix CVE-2021-20316
  - resolves: rhbz#1912549 - Winexe: Kerberos flag not invoking Kerberos Auth
  - resolves: rhbz#2039157 - Fix CVE-2021-43566
  - resolves: rhbz#2038148 - Failed to authenticate users after upgrade samba package to release samba-4.14.5-7
  - resolves: rhbz#2035528 - [smb] Segmentation fault when joining the domain
  - resolves: rhbz#2038796 - filename_convert_internal: open_pathref_fsp [xxx] failed: NT_STATUS_ACCESS_DENIED


author: Pavel Filipenský <pfilipen@redhat.com> - 4.15.5-0
changelog:
  - Update to Samba 4.15.5
  - related: rhbz#2013596 - Rebase Samba to the the latest 4.15.x release
  - resolves: rhbz#2046127 - Fix CVE-2021-44141
  - resolves: rhbz#2046153 - Fix CVE-2021-44142
  - resolves: rhbz#2044404 - Printing no longer works on Windows 7
  - resolves: rhbz#2043154 - Fix systemd notifications
  - resolves: rhbz#2049602 - Disable NTLMSSP for ldap client connections (e.g. libads)


author: Pavel Filipenský <pfilipen@redhat.com> - 4.15.5-1
changelog:
  - resolves: #1995849 - [RFE] Change change password change prompt phrasing
  - resolves: #2029417 - virusfilter_vfs_openat: Not scanned: Directory or special file


author: Pavel Filipenský <pfilipen@redhat.com> - 4.15.5-6
changelog:
  - resolves: rhbz#2059151 - Fix username map for unix groups
  - resolves: rhbz#2065212 - Fix 'create krb5 conf = yes` when a KDC has a single IP address.


author: Pavel Filipenský <pfilipen@redhat.com> - 4.16.3-0
changelog:
  - related: rhbz#2077468 - Rebase Samba to 4.16.3
  - resolves: rhbz#2106672 - The pcap background queue process should not be stopped
  - resolves: rhbz#2106263 - Fix crash in rpcd_classic
  - resolves: rhbz#2100093 - Fix net ads info returns LDAP server and LDAP server name


author: Andreas Schneider <asn@redhat.com> - 4.17.2-1
changelog:
  - resolves: rhbz#2132051 - Update to version 4.17.2
  - resolves: rhbz#2126174 - Fix CVE-2022-1615
  - resolves: rhbz#2108487 - ctdb: Add dependency to samba-winbind-clients


author: Pavel Filipenský <pfilipen@redhat.com> - 4.17.2-2
changelog:
  - Always add epoch to samba_depver to fix osci.brew-build.rpmdeplint.functional
  - related: rhbz#2132051


author: Pavel Filipenský <pfilipenn@redhat.com> - 4.17.4-0
changelog:
  - related: rhbz#2132051 - Update to version 4.17.4
  - resolves: rhbz#2154370 - Fix CVE-2022-38023
  - resolves: rhbz#2142331 - Fix %U include directive for share listing (netshareenum)
  - resolves: rhbz#2148943 - Fix Winbind to retrieve user groups from Active Directory


author: Pavel Filipenský <pfilipen@redhat.com> - 4.17.5-2
changelog:
  - resolves: rhbz#2169339 - Fix winbind memory leak
  - resolves: rhbz#2152899 - Fix Samba shares not accessible issue


author: Pavel Filipenský <pfilipen@redhat.com> - 4.18.4-1
changelog:
  - resolves: rhbz#2221594 - Fix broken symlink for libwbclient
  - resolves: rhbz#2221600 - Fix segfault of winbind child when listing users with `winbind scan trusted domains = yes`
  - resolves: rhbz#2175385 - Fix access of Samba share with veto files = /.*/
  - resolves: rhbz#2218237 - Fix Python tarfile extraction to avoid a warning


author: Pavel Filipenský <pfilipen@redhat.com> - 4.18.5-0
changelog:
  - resolves: rhbz#2222894 - Fix CVE-2022-2127 CVE-2023-3347 CVE-2023-34966 CVE-2023-34967 CVE-2023-34968


author: Andreas Schneider <asn@redhat.com> - 4.18.6-1
changelog:
  - related: rhbz#2190417 - Update to version 4.18.6
  - resolves: rhbz#2232564 - Fix the rpc dsgetinfo command


author: Pavel Filipenský <pfilipen@redhat.com> - 4.19.3-1
changelog:
  - resolves: RHEL-16483 - Update to version 4.19.3
  - resolves: RHEL-11361
              - Fix CVE-2023-3961 CVE-2023-4091 CVE-2023-42669
  - resolves: RHEL-2228  - Logging Format Enhancement
  - resolves: RHEL-1965  - Fix smbget issues with DFS shares
  - resolves: RHEL-2108  - Fix force user/group issues with 'allow trusted domains = yes'
  - resolves: RHEL-17122 - Fix memory corruption in libnss_winbind


author: Pavel Filipenský <pfilipen@redhat.com> - 4.19.4-2
changelog:
  - Fix error in PREIN scriptlet in rpm package samba-common
  - related: RHEL-16483 - Update to version 4.19.4


author: Pavel Filipenský <pfilipen@redhat.com> - 4.19.4-10
changelog:
  - resolves: RHEL-101902 - Fix DC discovery after Windows netlogon hardening - follow-up
  - resolves: RHEL-111318 - Fix winbind fork bomb in 'IPA with AD trust' environment


author: Pavel Filipenský <pfilipen@redhat.com> - 4.19.4-16
changelog:
  - resolves: RHEL-156322 - Fix CVE-2026-3012
  - resolves: RHEL-161647 - Fix CVE-2026-4480
  - resolves: RHEL-177933 - Fix CVE-2026-4408
  - resolves: RHEL-166866 - Build hardening, stack protection with FORTIFY_SOURCE


author: Zdenek Dohnal <zdohnal@redhat.com> - 1:2.2.6-55
changelog:
  - RHEL-14933 cupsd memory leak in cupsdDeleteJob() with "PreserveJobHistory Off"
  - RHEL-15309 cupsd fails to open cups-files.conf and the resulting error message is lost


author: Zdenek Dohnal <zdohnal@redhat.com> - 1:2.2.6-56
changelog:
  - RHEL-10702 cupsGetJobs fails to connect if poll() gets POLLOUT|POLLHUP in revents
  - RHEL-19200 Recommend new cups-filters subpackages with weak dep for better upgrade exp


author: Pavol Zacik <pzacik@redhat.com> - 1:2.2.6-60
changelog:
  - RHEL-40386 cups: Cupsd Listen arbitrary chmod 0140777
  - Delete the domain socket file after stopping the cups.socket service
  - Fix cupsd Listener checks


author: Tim Powers <timp@redhat.com>
changelog:
  - started changelog 
  - fixed init.d script location
  - changed script in init.d quite a bit and made more like the rest of our
    startup scripts


author: Than Ngo <than@redhat.de>
changelog:
  - update to 1.1 release
  - move back to /etc/rc.d/init.d
  - fix cupsd.init to work with /etc/init.d and /etc/rc.d/init.d
  - split cups


author: Bernhard Rosenkraenzer <bero@redhat.com>
changelog:
  - 1.1.1 (this has some major bugfixes)
  - Fix a typo in initscript (it's $?, not ?$)
  - Fix /usr/etc vs. /etc trouble, don't insist on /usr/var (YUCK!)
  - Create the spool dir


author: Bernhard Rosenkraenzer <bero@redhat.com> 1.1.13-1
changelog:
  - 1.1.13
  - Add patch for koi8-{r,u} and iso8859-8 encodings (#59018)
  - Rename init scripts so we can safely "killall cupsd" from there


author: Bernhard Rosenkraenzer <bero@redhat.com> 1.1.13-5
changelog:
  - Move cups-config to cups-devel subpackage
  - Make alternatives usage a %define to simplify builds for earlier
    releases
  - Explicitly provide things we're supplying through alternatives
    to shut up kdeutils dependencies


author: Bill Nottingham <notting@redhat.com> 1.1.14-7
changelog:
  - lpc man page is alternative too
  - run ldconfig in -libs %post/%postun, not main
  - remove alternatives in %preun


author: Bernhard Rosenkraenzer <bero@redhat.com> 1.1.14-12
changelog:
  - Support SMB printing (#62407)
  - Add HTML redirections to doc files to work around users mistaking
    /usr/share/doc/cups-1.1.14 for the web frontend (#62405)


author: Bernhard Rosenkraenzer <bero@redhat.com> 1.1.15-1
changelog:
  - 1.1.15-1
  - Fix up smb printing trigger (samba-client, not samba-clients)
  - Start cupsd earlier, apparently it needs to be running before samba
    starts up for smb printing to work.


author: Bernhard Rosenkraenzer <bero@redhat.com> 1.1.15-3
changelog:
  - Add a symlink /usr/share/cups/doc -> /usr/share/doc/cups-devel-1.1.15
    because some applications expect to find the cups docs in
    /usr/share/cups/doc


author: Tim Waugh <twaugh@redhat.com> 1.1.15-7
changelog:
  - Really add cups-lpd xinetd file (bug #63919).
  - Ship pstoraster (bug #69573).
  - Prevent fread from trying to read from beyond EOF (fixes a segfault
    with new glibc).


author: Tim Waugh <twaugh@redhat.com> 1.1.15-11
changelog:
  - Use %configure for multilib correctness.
  - Use libexec instead of lib for CUPS_SERVERBIN.
  - Ship translated man pages.
  - Remove unshipped files.
  - Fix file list permissions (bug #59021, bug #74738).
  - Fix messy initscript output (bug #65857).
  - Add 'reload' to initscript (bug #76114).


author: Tim Waugh <twaugh@redhat.com> 1.1.15-13
changelog:
  - Use logrotate for log rotation (bug #76791).
  - No longer need cups.desktop, since redhat-config-printer handles it.


author: Nalin Dahyabhai <nalin@redhat.com> 1.1.15-14
changelog:
  - Buildrequire pam-devel.
  - Patch default PAM config file to remove directory names from module paths,
    allowing the configuration files to work equally well on multilib systems.
  - Patch default PAM config file to use system-auth, require the file at build-
    time because that's what data/Makefile checks for.


author: Tim Waugh <twaugh@redhat.com> 1.1.17-6
changelog:
  - Add epoch to internal requirements.
  - Make 'condrestart' return success exit code when daemon isn't running.


author: Tim Waugh <twaugh@redhat.com> 1.1.18-1
changelog:
  - 1.1.18.
  - No longer need uninit patch.
  - Some parts of the iDefense and pdftops patches seem to have been
    picked up, but not others.


author: Havoc Pennington <hp@redhat.com> 1:1.1.18-4
changelog:
  - adjust dbus patch - dbus_bus_get() sends the hello for you, 
    and there were a couple of memleaks
  - buildprereq dbus 0.9
  - rebuild for new dbus
  - hope it works, I'm ssh'd in with no way to test. ;-)


author: Tim Waugh <twaugh@redhat.com> 1:1.1.19-0.rc4.1
changelog:
  - 1.1.19rc4.  Ported initscript, idefense, ppdsdat, dbus patches.
  - No longer need error, sigchld patches.
  - Ship cupstestppd.


author: Tim Waugh <twaugh@redhat.com> 1:1.1.19-7
changelog:
  - Add some %if %use_dbus / %endif's to make it compile without dbus
    (bug #97397).  Patch from Jos Vos.


author: Tim Waugh <twaugh@redhat.com> 1:1.1.19-10
changelog:
  - Pass correct attributes-natural-language through even in the absence
    of translations for that language (bug #100984).
  - Show compilation command lines.


author: Tim Waugh <twaugh@redhat.com>
changelog:
  - Don't ignore the file descriptor when ShutdownClient is called: it
    might get closed before we next try to read it (bug #107787).


author: Tim Waugh <twaugh@redhat.com> 1:1.1.20-1
changelog:
  - 1.1.20.
  - No longer need idefense, str226 patches.
  - Updated sanity patch.
  - The devel sub-package requires openssl-devel (bug #110772).


author: Tim Waugh <twaugh@redhat.com> 1:1.1.20-2
changelog:
  - Try harder to find a translated page for the web interface (bug #107619).
  - Added build_as_pie conditional to spec file to facilitate debugging.


author: Tim Waugh <twaugh@redhat.com> 1:1.1.20-4
changelog:
  - Tracked D-BUS API changes.
  - Updated D-BUS configuration file.
  - Symlinks to avoid conflicting with bash builtins (bug #102490).


author: Tim Waugh <twaugh@redhat.com> 1:1.1.20-7
changelog:
  - Fix non-conformance with HTTP/1.1, which caused failures when printing
    to a Xerox Phaser 8200 via IPP (bug #122352).
  - Make lppasswd(1) PIE.
  - Rotate logs within cupsd (instead of relying on logrotate) if we start
    to approach the filesystem file size limit (bug #123003).


author: Tim Waugh <twaugh@redhat.com>
changelog:
  - Fix cups/util.c:get_num_sdests() to use encryption when it is necessary
    or requested (bug #118982).
  - Use upstream patch for the HTTP/1.1 Continue bug (from STR716).


author: Tim Waugh <twaugh@redhat.com> 1:1.1.20-8
changelog:
  - If cupsd fails to start, make it exit with an appropriate code so that
    initlog notifies the user (bug #110135).


author: Tim Waugh <twaugh@redhat.com> 1:1.1.20-9
changelog:
  - Apply patches from CVS (authtype) to fix STR #434, STR #611, and as a
    result STR #719.  This fixes several problems including those noted in
    bug #114999.


author: Tim Waugh <twaugh@redhat.com> 1:1.1.21-1.rc2.1
changelog:
  - 1.1.21rc2.
  - No longer need state, reload-timeout or str743 patches.
  - httpnBase64 patch no longer applies; alternate method implemented
    upstream.
  - Fix single byte overread in usersys.c (spotted by Colin Walters).


author: Tim Waugh <twaugh@redhat.com> 1:1.1.22-0.rc1.7
changelog:
  - Prevent filters generating incorrect PS in locales where "," is the
    decimal separator (bug #136102).  Patch from STR #970.


author: Tim Waugh <twaugh@redhat.com> 1:1.1.22-0.rc2.1
changelog:
  - Make cancel-cups(1) man page point to lp-cups(1) not lp(1) (bug #136973).
  - Use upstream patch for STR #953.
  - 1.1.22rc2.


author: Tim Waugh <twaugh@redhat.com> 1:1.1.22-2
changelog:
  - Fixed cups-lpd file mode (bug #137325).
  - Convert all man pages to UTF-8 (bug #107118).  Patch from Miloslav Trmac.


author: Tim Waugh <twaugh@redhat.com> 1:1.1.23-18
changelog:
  - Raise IPP_MAX_VALUES to 100 (bug #164232).  STR #1284.
  - Made FindDest better behaved in some instances (bug #164232).  STR #1283.


author: Tim Waugh <twaugh@redhat.com>
changelog:
  - 1.2 svn snapshot.
  - No longer need doclink, str1023, pdftops, sanity, lpstat, str1068,
    sigchld, gcc34, gcc4, slow, CAN-2004-0888, CAN-2005-2097, finddest,
    str1249, str1284, str1290, str1301, CVE-2005-3625,6,7 patches.
  - Removed autodetect-tag patch.


author: Tim Waugh <twaugh@redhat.com> 1:1.2-0.0.svn4964.0
changelog:
  - Use -fPIE not -fpie in PIE patch.
  - Fix link patch.
  - Patch in PIE instead of using --enable-pie, since that doesn't work.


author: Tim Waugh <twaugh@redhat.com> 1:1.2-0.0.svn5102.0
changelog:
  - New svn snapshot.
  - No longer need enabledisable patch.
  - Fixed double-free in scheduler/policy.c (STR #1428).


author: Tim Waugh <twaugh@redhat.com> 1:1.2-0.1.b2.6
changelog:
  - Add KDE compatibility symbols _ipp_add_attr/_ipp_free_attr to ipp.h, with
    a comment saying why they shouldn't be used.


author: Tim Waugh <twaugh@redhat.com> 1:1.2-0.2.rc1.1
changelog:
  - Ship a printers.conf file, and a client.conf file.  That way, they get
    their SELinux file contexts set correctly.


author: Tim Waugh <twaugh@redhat.com> 1:1.2-0.2.rc1.8
changelog:
  - No longer need openssl-devel.
  - Build with LDAP_DEPRECATED=1, to pick up declarations of ldap_init() etc.
  - Only warn about ACLs once (STR #1532).
  - Fix imagetops filter (STR #1533).
  - Sync pstops.c with svn 5382.


author: Tim Waugh <twaugh@redhat.com> 1:1.2-0.5.rc3.2
changelog:
  - Patch pdftops to understand 'includeifexists', and use that in the
    pdftops.conf file (bug #189809).


author: Tim Waugh <twaugh@redhat.com>
changelog:
  - No longer need backend, rcp, or ppdsdat patches.
  - Use configure switch for LogFilePerm default instead of patch.


author: Tim Waugh <twaugh@redhat.com>
changelog:
  - Sync to svn5470.
  - No longer need link, CAN-2005-0064, or no-propagate-ipp-port patches.
  - Switch to upstream PIE implementation (every single binary is PIE).
  - Extend relro to all binaries.
  - Better rpath patch.


author: Tim Waugh <twaugh@redhat.com>
changelog:
  - Sync to svn5538.
  - Added 'restartlog' to initscript, for clearing out error_log.  Useful
    for problem diagnosis.
  - Initscript no longer needs to check for printconf-backend.


author: Tim Waugh <twaugh@redhat.com> 1:1.2.0-4
changelog:
  - Disable back-channel data in the usb backend (STR #1705, bug #192034).
  - Fix for 'browsing stops on reload', STR #1670 (bug #191217).


author: Tim Waugh <twaugh@redhat.com> 1:1.2.0-7
changelog:
  - Sync to svn5568.  No longer need rpath patch.
  - Added a 'conflicts:' for kdelibs to prevent bug #192548.


author: Tim Waugh <twaugh@redhat.com> 1:1.2.1-2
changelog:
  - 1.2.1.
  - Another STR #1705 fix (bug #192034).
  - Fixed devel package multilib conflict (bug #192664).


author: Tim Waugh <twaugh@redhat.com> 1:1.2.2-6
changelog:
  - Use replacement snmp.c from STR #1737 (bug #193093).
  - Re-enable LSPP; doesn't harm browsing after all.


author: Tim Waugh <twaugh@redhat.com> 1:1.2.2-10
changelog:
  - Remove 'Provides: LPRng = 3.8.15-3' (bug #148757).
  - Applied patch to fix STR #1893 (bug #201800).


author: Tim Waugh <twaugh@redhat.com> 1:1.2.4-8
changelog:
  - LSPP patch didn't get updated properly in 1:1.2.4-6.  Use the right
    patch this time (bug #208676).  LSPP re-enabled.


author: Tim Waugh <twaugh@redhat.com> 1:1.2.4-9
changelog:
  - adminutil.c: when writing 'BrowseAllow @LOCAL', add a comment about what
    to change it to when using directed broadcasts from another subnet
    (bug #204373).


author: Tim Waugh <twaugh@redhat.com> 1:1.2.5-4
changelog:
  - Fixed support for /dev/ttyUSB devices (bug #212577, STR #2061).
  - Fixed parallel backend (bug #213021, STR #2056).


author: Tim Waugh <twaugh@redhat.com> 1:1.2.7-4
changelog:
  - Another LSPP fix (bug #216669).
  - Fixed LSPP SELinux check (bug #216855).
  - Increased PPD timeout in copy_model() (bug #216065).


author: Tim Waugh <twaugh@redhat.com> 1:1.2.7-6
changelog:
  - Fixed If-Modified-Since: handling in libcups (bug #217556, STR #2133).
  - Fixed extra EOF in pstops output (bug #216154, STR #2111).
  - Use upstream patch for STR #2121.


author: Tim Waugh <twaugh@redhat.com> 1:1.2.7-8
changelog:
  - Removed logrotate config file and maxlogsize patch (bug #227369).  Now
    CUPS is in charge of rotating its own logs, and defaults to doing so once
    they get to 1Mb in size.


author: Tim Waugh <twaugh@redhat.com> 1:1.2.10-6
changelog:
  - Fixed 'cancel' man page (bug #234088).
  - Added empty subscriptions.conf file to make sure it gets the right
    SELinux file context.


author: Tim Waugh <twaugh@redhat.com> 1:1.2.10-7
changelog:
  - Until bug #236736 is fixed, work around the kernel usblp driver's
    quirks so that we can detect paper-out conditions.


author: Tim Waugh <twaugh@redhat.com>
changelog:
  - Make the initscript use start priority 56 (bug #213828).
  - Better paper-out detection patch (bug #241589).


author: Tim Waugh <twaugh@redhat.com> 1:1.3-0.b1.2
changelog:
  - Build requires avahi-compat-libdns_sd-devel.  Applied patch to fix
    build against avahi (bug #245824).
  - Build requires krb5-devel.


author: Tim Waugh <twaugh@redhat.com> 1:1.3-0.b1.3
changelog:
  - Change initscript start level to 98, to start after avahi but before
    haldaemon.
  - The devel sub-package requires krb5-devel.


author: Tim Waugh <twaugh@redhat.com> 1:1.3-0.rc2.1
changelog:
  - Better buildroot tag.
  - Moved LSPP access check in add_job() to before allocation of the job
    structure (bug #231522).
  - 1.3rc2.  No longer need avahi patch.


author: Tim Waugh <twaugh@redhat.com> 1:1.3-0.rc2.2
changelog:
  - Make cancel man page work properly with alternatives system (bug #249768).
  - Don't call aclocal even when we modify m4 files -- CUPS does not use
    automake (bug #250251).


author: Tim Waugh <twaugh@redhat.com> 1:1.3.3-3
changelog:
  - Use ppdev instead of libieee1284 for parallel port Device ID
    retrieval (bug #311671).  This avoids SELinux audit messages.


author: Tim Waugh <twaugh@redhat.com> 1:1.3.4-2
changelog:
  - Applied patch to fix CVE-2007-4045 (bug #250161).
  - Applied patch to fix CVE-2007-4352, CVE-2007-5392 and
    CVE-2007-5393 (bug #345101).


author: Tim Waugh <twaugh@redhat.com>
changelog:
  - Fixed CVE-2007-4045 patch; has no effect with shipped packages since they
    are linked with gnutls.
  - LSPP cupsdSetString/ClearString fixes (bug #378451).


author: Tim Waugh <twaugh@redhat.com>
changelog:
  - CVE-2007-4045 patch is not necessarily because cupsd_client_t objects are
    not moved in array operations, only pointers to them.


author: Tim Waugh <twaugh@redhat.com>
changelog:
  - Apply patch to prevent overlong PPD lines from causing failures except
    in strict mode (bug #405061).  Needed for compatibility with older
    versions of foomatic (e.g. Red Hat Enterprise Linux 3/4).
  - Applied upstream patch to fix cupsctl --remote-any (bug #421411, STR #2650).


author: Tim Waugh <twaugh@redhat.com> 1:1.3.5-4
changelog:
  - Fix compilation of SO_PEERCRED support.
  - Include fixes from svn up to revision 7287.  No longer need str2650 or
    str2664 patches.


author: Tim Waugh <twaugh@redhat.com> 1:1.3.5-6
changelog:
  - Include fixes from svn up to revision 7304.  No longer need str2703 patch.
    Build with --with-dbusdir.
  - Try out logrotate again (bug #432730).


author: Tim Waugh <twaugh@redhat.com> 1:1.3.6-3
changelog:
  - Set MaxLogSize to 0 to prevent log rotation.  Upstream default is 1Mb, but
    we want logrotate to be in charge.


author: Tim Waugh <twaugh@redhat.com> 1:1.3.6-4
changelog:
  - LSB header for initscript (bug #246897).
  - Move HTML-related files to main application directory so that the CUPS
    web interface still works even with --excludedocs (bug #375631).


author: Tim Waugh <twaugh@redhat.com> 1:1.3.6-9
changelog:
  - Applied patch to fix CVE-2008-1373 (GIF overflow, bug #438303).
  - Applied patch to prevent heap-based buffer overflow in CUPS helper
    program (bug #436153, CVE-2008-0047, STR #2729).


author: Tim Waugh <twaugh@redhat.com> 1:1.3.7-3
changelog:
  - If cupsdTimeoutJob is called when the originating connection is still
    known, pass that to the function so that copy_banner can get at it if
    necessary (bug #447200).


author: Tim Waugh <twaugh@redhat.com> 1:1.3.7-13
changelog:
  - CVE-2008-1373 patch is no longer needed (applied upstream).
  - Mark HTML files and templates config(noreplace) for site-local
    modifications (bug #441719).
  - The cups-devel package requires zlib-devel (bug #455192).


author: Tim Waugh <twaugh@redhat.com>
changelog:
  - Removed autoconf requirement by applying autoconf-generated changes
    to patches that caused them.  Affected patches: cups-lspp.


author: Tim Waugh <twaugh@redhat.com> 1:1.3.8-5
changelog:
  - The dnssd backend uses avahi-browse so require it (bug #458565).
  - New php sub-package (bug #428235).
  - cups-polld: reinit the resolver if we haven't yet resolved the
    hostname (bug #354071).


author: Tim Waugh <twaugh@redhat.com> 1:1.3.9-1
changelog:
  - 1.3.9, including fixes for CVE-2008-3639 (STR #2918, bug #464710),
    CVE-2008-3640 (STR #2919, bug #464713) and CVE-2008-3641 (STR #2911,
    bug #464716).
  - No longer need str2892 or res_init patches.


author: Tim Waugh <twaugh@redhat.com> 1:1.4-0.b1.3
changelog:
  - 1.4b1.
  - No longer need ext, includeifexists, foomatic-recommended,
    getnameddest, str2101, str2536 patches.
  - Require poppler-utils at runtime and for build.  No longer need
    pdftops.conf.
  - Obsolete cupsddk.


author: Tim Waugh <twaugh@redhat.com> 1:1.4-0.b1.5
changelog:
  - Applied patch to fix RSS subscription limiting (bug #473901,
    CVE-2008-5183).
  - Attempt to unbreak the fix for STR #2831 (bug #474742).


author: Tim Waugh <twaugh@redhat.com> 1:1.4-0.b2.6
changelog:
  - Beginnings of avahi support.  The dnssd backend should now work, but
    the scheduler will not yet advertise DNS-SD services.
  - No longer require avahi-tools as the dnssd backend does not use the
    command line tools any longer.
  - Load MIME type rules correctly (bug #426089, STR #3059).


author: Tim Waugh <twaugh@redhat.com> 1:1.4-0.b2.7
changelog:
  - Prevent cups-deviced missing devices (STR #3108).
  - Actually drop the perl implementation of the dnssd backend and use
    the avahi-aware one.


author: Tim Waugh <twaugh@redhat.com> 1:1.4-0.b2.12
changelog:
  - If cups-polld gets EAI_AGAIN when looking up a hostname,
    re-initialise the resolver (bug #490943).


author: Tim Waugh <twaugh@redhat.com> 1:1.4-0.b2.13
changelog:
  - Don't verify MD5 sum, file size, or mtime for several config files:
    cupsd.conf, client.conf, classes.conf, printers.conf, snmp.conf,
    subscriptions.conf, lpoptions (bug #486287).


author: Tim Waugh <twaugh@redhat.com> 1:1.4-0.b2.14
changelog:
  - Applied patch to fix CVE-2009-0163 (bug #490596).
  - Applied patch to fix CVE-2009-0164 (bug #490597).


author: Tim Waugh <twaugh@redhat.com> 1:1.4-0.b2.15
changelog:
  - Accept "Host: ::1" (bug #497393).
  - Accept Host: fields set to the ServerName value (bug #497301).
  - Specify that we want poppler's pdftops (not ghostscript) for the
    pdftops wrapper when calling configure.


author: Tim Waugh <twaugh@redhat.com> 1:1.4-0.rc1.1
changelog:
  - 1.4rc1.  No longer need str3124, CVE-2009-0163, CVE-2009-0164,
    str3197, missing-devices patches.
  - Disabled avahi patch for the time being.  More work is needed to
    port this to rc1.
  - Removed wbuffer patch as it is not needed (see STR #1968).


author: Tim Waugh <twaugh@redhat.com> 1:1.4-0.rc1.3
changelog:
  - Don't use RPM_SOURCE_DIR macro.
  - Fixed add/modify-printer templates which had extra double-quote
    characters, preventing the Continue button from appearing in certain
    browsers (bug #506461, STR #3229).


author: Tim Waugh <twaugh@redhat.com> 1:1.4-0.rc1.7
changelog:
  - Fixed template problem preventing current printer option defaults
    from being shown in the web interface (bug #506794, STR #3244).


author: Tim Waugh <twaugh@redhat.com> 1:1.4-0.rc1.10
changelog:
  - Applied patch to prevent bad job control files crashing cupsd on
    start-up (STR #3253, bug #509741).
  - Correctly handle CUPS-Get-PPDs requests for models with '+' in their
    names (STR #3254, bug #509586).
  - Accept incorrect device URIs in the (non-libusb) usb backend for
    compatibility with Fedora 11 before bug #507244 was fixed.
  - Applied patch to fix incorrect device URIs (STR #3259, bug #507244).
  - Applied patch to fix job-hold-until for remote queues (STR #3258,
    bug #497376).


author: Tim Waugh <twaugh@redhat.com> 1:1.4-0.rc1.12
changelog:
  - Fixed Avahi support in the dnssd backend (bug #513888).
  - Fixed incorrect arguments to sigaction() in dnssd backend (STR #3272).
  - Cheaply restore compatibility with 1.1.x by having cups_get_sdests()
    perform a CUPS_GET_CLASSES request if it is not sure it is talking
    to CUPS 1.2 or later (bug #512866).
  - Prevent ipp backend looping with bad IPP devices (bug #476424,
    STR #3262).
  - Fixed Device ID reporting in the usb backend (STR #3266).


author: Tim Waugh <twaugh@redhat.com> 1:1.4-0.rc1.13
changelog:
  - Ship udev rules to allow libusb to access printer devices.
  - Fixed duplex test pages (bug #514898, STR #3277).


author: Tim Waugh <twaugh@redhat.com> 1:1.4-0.rc1.14
changelog:
  - Fixed ppds.dat handling of drv files (bug #515027, STR #3279).
  - Fixed udev rules file to avoid DEVTYPE warning messages.
  - Fixed cupsGetNamedDest() so it does not fall back to the default
    printer when a destination has been named (bug #516439, STR #3285).
  - Fixed MIME type rules for image/jpeg and image/x-bitmap
    (bug #516438, STR #3284).
  - Clear out cache files on upgrade.
  - Require acl.


author: Tim Waugh <twaugh@redhat.com> 1:1.4-0.rc1.16
changelog:
  - Fixed JobKillDelay handling for cancelled jobs (bug #518026, STR
    - Use 'exec' to invoke ghostscript in the pstoraster filter.  This
    allows the SIGTERM signal to reach the correct process, as well as
    conserving memory (part of bug #518026).


author: Tim Waugh <twaugh@redhat.com> 1:1.4-0.rc1.19
changelog:
  - Prevent infinite loop in cupsDoIORequest when processing HTTP
    errors (bug #518065, bug #519663, STR #3311).
  - Fixed document-format-supported attribute when
    application/octet-stream is enabled (bug #516507, STR #3308, patch
    from Jiri Popelka).
  - Fixed buggy JobKillDelay handling fix (STR #3292).
  - Prevent infinite loop in ppdc (STR #3293).


author: Tim Waugh <twaugh@redhat.com> 1:1.4.0-2
changelog:
  - Fixed the dnssd backend so that it only reports devices once avahi
    resolution has completed.  This makes it report Device IDs
    (bug #520858).
  - Fix locale code for Norwegian (bug #520379).


author: Jiri Popelka <jpopelka@redhat.com> 1:1.4.1-4
changelog:
  - Changed cups.init to be LSB compliant (bug #521641), i.e.
    return code "2" (instead of "3") if invalid arguments
    return code "4" if restarting service under nonprivileged user
    return code "5" if cupsd not exist or is not executable
    return code "6" if cupsd.conf not exist


author: Jiri Popelka <jpopelka@redhat.com> 1:1.4.1-13
changelog:
  - Fix incorrectly applied patch from #STR3285 (bug #531108).
  - Set the PRINTER_IS_SHARED variable for admin.cgi (bug #529634, #STR3390).
  - Pass through serial parameters correctly in web interface (bug #529635, #STR3391).
  - Fixed German translation (bug #531144, #STR3396).


author: Tim Waugh <twaugh@redhat.com> 1:1.4.2-1
changelog:
  - 1.4.2.  No longer need str3380, str3332, str3356, str3396 patches.
  - Removed postscript.ppd.gz (bug #533371).
  - Renumbered patches and sources.


author: Tim Waugh <twaugh@redhat.com> 1:1.4.2-5
changelog:
  - Fixed typo in admin web template (bug #537884, STR #3403).
  - Reset SIGPIPE handler for child processes (bug #537886, STR #3399).


author: Tim Waugh <twaugh@redhat.com> 1:1.4.2-6
changelog:
  - Fixed display of current driver (bug #537182, STR #3418).
  - Fixed out-of-memory handling when loading jobs (bug #538054,
    STR #3407).


author: Tim Waugh <twaugh@redhat.com> - 1:1.4.2-14
changelog:
  - The scheduler did not use the Get-Job-Attributes policy for a
    printer (STR #3431).
  - The scheduler added two job-name attributes to each job object
    (STR #3428).
  - The scheduler did not clean out completed jobs when
    PreserveJobHistory was turned off (STR #3425).
  - The web interface did not show completed jobs (STR #3436).
  - Authenticated printing did not always work when printing directly to
    a remote server (STR #3435).
  - Use upstream patch to stop the network backends incorrectly clearing
    the media-empty-warning state (rev 8896).
  - Use upstream patch to fix interrupt handling in the side-channel
    APIs (rev 8896).
  - Use upstream patch to handle negative SNMP string lengths (rev 8896).
  - Use upstream fix for SNMP detection (bug #542857, STR #3413).
  - Use the text filter for text/css files (bug #545026, STR #3442).
  - Show conflicting option values in web UI (bug #544326, STR #3440).
  - Use upstream fix for adjustment of conflicting options
    (bug #533426, STR #3439).
  - No longer requires paps.  The texttopaps filter MIME conversion file
    is now provided by the paps package (bug #545036).
  - Moved %{_datadir}/cups/ppdc/*.h to the main package (bug #545348).


author: Tim Waugh <twaugh@redhat.com> - 1:1.4.2-20
changelog:
  - Fixed ipp authentication for servers requiring authentication for
    IPP-Get-Printer-Attributes (bug #548873, STR #3458).


author: Tim Waugh <twaugh@redhat.com> - 1:1.4.2-21
changelog:
  - Fixed patch for STR #3425 again by adding in back-ported change from
    svn revision 8929 (bug #549899).  No longer need
    delete-active-printer patch.


author: Tim Waugh <twaugh@redhat.com> - 1:1.4.2-22
changelog:
  - Removed use of prereq and buildprereq.
  - Fixed use of '%' in changelog.
  - Versioned explicit obsoletes/provides.
  - Use tabs throughout.


author: Tim Waugh <twaugh@redhat.com> - 1:1.4.2-23
changelog:
  - Use %{_initddir}, %{_sysconfdir} and SMP make flags.
  - Use mode 0755 for binaries and libraries where appropriate.
  - Fix lpd obsoletes tag.


author: Jiri Popelka <jpopelka@redhat.com> 1:1.4.2-32
changelog:
  - Fixed cupsGetNamedDest() so it falls back to the real default
    printer when a default from configuration file does not exist (bug #565569, STR #3503).


author: Tim Waugh <twaugh@redhat.com> - 1:1.4.2-33
changelog:
  - Don't own filesystem locale directories (bug #569403).
  - Don't apply gcrypt threading patch (bug #553834).
  - Don't treat SIGPIPE as an error (bug #569770).


author: Tim Waugh <twaugh@redhat.com> - 1:1.4.2-34
changelog:
  - Applied patch for CVE-2010-0302 (incomplete fix for CVE-2009-3553,
    bug #557775).
  - Added comments for all sources and patches.


author: Jiri Popelka <jpopelka@redhat.com> 1:1.4.2-35
changelog:
  - Fixed (for the third time) patch for STR #3425 to correctly
    remove job info files in /var/spool/cups (bug #571830).


author: Jiri Popelka <jpopelka@redhat.com> 1:1.4.3-1
changelog:
  - 1.4.3.
  - No longer need CVE-2009-3553, str3381, str3390, str3391,
    str3403, str3407, str3413, str3418, str3422, str3425,
    str3428, str3431, str3435, str3436, str3439, str3440,
    str3442, str3448, str3458, str3460, cups-sidechannel-intrs,
    negative-snmp-string-length, cups-media-empty-warning patches.


author: Tim Waugh <twaugh@redhat.com> 1:1.4.3-9
changelog:
  - Adjust texttops output to be in natural orientation (STR #3563).
    This fixes page-label orientation when texttops is used in the
    filter chain (bug #572338).


author: Tim Waugh <twaugh@redhat.com>
changelog:
  - Removed unapplied gnutls-gcrypt-threads patch.  Fixed typos in
    descriptions for lpd and php sub-packages.


author: Tim Waugh <twaugh@redhat.com> 1:1.4.4-1
changelog:
  - 1.4.4.  Fixes several security vulnerabilities (bug #605399):
    CVE-2010-0540, CVE-2010-0542, CVE-2010-1748.  No longer need str3503,
    str3399, str3505, str3541, str3425p2 or CVE-2010-0302 patches.


author: Tim Waugh <twaugh@redhat.com>
changelog:
  - Merged F-12 change:
    - Use numeric addresses for interfaces unless HostNameLookups are
      turned on (bug #583054).


author: Tim Waugh <twaugh@redhat.com> 1:1.4.4-10
changelog:
  - Perform locking for gnutls and avoid libgcrypt's broken
    locking (bug #607159).
  - Build with --enable-threads again (bug #607159).
  - Force the use of gnutls despite thread-safety concerns (bug #607159).


author: Tim Waugh <twaugh@redhat.com> 1:1.4.4-12
changelog:
  - Applied patch to fix cupsd memory corruption vulnerability
    (CVE-2010-2941, bug #652161).
  - Don't crash when MIME database could not be loaded (bug #610088).


author: Jiri Popelka <jpopelka@redhat.com> 1:1.4.5-4
changelog:
  - Changed subsystem lock file name in initscript
    so the service is correctly stopped on reboot or halt (bug #659391).


author: Tim Waugh <twaugh@redhat.com> 1:1.4.5-5
changelog:
  - Fixed character encoding in CREDITS.txt.
  - Mark D-Bus configuration file as config file.
  - Don't mark MIME types and convs files as config files.  Overrides
    can be placed as new *.types/*.convs files in /etc/cups.
  - Don't mark banners as config files.  Better is to provide new
    banners.
  - Don't mark templates and www files as config files.  A better way to
    provide local overrides is to use a different ServerRoot setting.
    Note that a recent security fix required changed to template files.
  - Provide versioned LPRng symbol for rpmlint.


author: Tim Waugh <twaugh@redhat.com> 1:1.4.5-6
changelog:
  - The cups-config man page has been moved to the devel sub-package.
  - The php sub-package now explicitly requires the libs package with
    the same version and release (bug #646814).


author: Tim Waugh <twaugh@redhat.com> 1:1.4.6-2
changelog:
  - Use a smaller buffer when writing to USB devices (bug #661814).
  - Handle EAI_NONAME when resolving hostnames (bug #617208).


author: Tim Waugh <twaugh@redhat.com> 1:1.4.6-4
changelog:
  - Properly separated serverbin-compat and lspp patches.
  - Updated ICC patch (still not yet applied).


author: Tim Waugh <twaugh@redhat.com> 1:1.4.6-6
changelog:
  - Don't use --enable-pie configure option as it has been removed and
    is now assumed.  See STR #3691.


author: Jiri Popelka <jpopelka@redhat.com> 1:1.5-0.1.b1
changelog:
  - 1.5b1
    - removed cups-texttops-rotate-page.patch (#572338 is CANTFIX)
    - removed cups-page-label.patch (#520141 seems to be CANTFIX)


author: Tim Waugh <twaugh@redhat.com> 1:1.5-0.10.rc1
changelog:
  - Don't use portreserve any more.  Better approach is to use systemd
    socket activation (not yet done).


author: Tim Waugh <twaugh@redhat.com> 1:1.5-0.14.rc1
changelog:
  - Undo last change which had no effect.  We already remove the .SILENT
    target from the Makefile as part of the build.


author: Tim Waugh <twaugh@redhat.com> 1:1.5.0-6
changelog:
  - Tighten explicit libs sub-package requirement so that it includes
    the correct architecture as well (bug #731421 comment #8).


author: Richard Hughes <rhughes@redhat.com> 1:1.5.0-11
changelog:
  - Updated colord patch with fixes to DeleteDevice.
  - Resolves https://bugzilla.redhat.com/show_bug.cgi?id=741697


author: Tim Waugh <twaugh@redhat.com> 1:1.5.0-12
changelog:
  - More fixes for systemd socket activation:
    - relax permissions check for domain socket in libcups.
    - initialise addrlen before calling getsockname().


author: Tim Waugh <twaugh@redhat.com> 1:1.5.0-16
changelog:
  - Use upstream fix for driverd issue (bug #742989).
  - Array handling fixes for DNSSDPrinters.
  - Array handling fixes for Avahi poll implementation.
  - Increase client blocking timeout from 30s to 70s (bug #744715).
  - Set BindIPv6Only=ipv6-only in systemd socket unit file as better fix
    for bug #737230.


author: Tim Waugh <twaugh@redhat.com> 1:1.5.0-18
changelog:
  - Make sure to guard against retrying the Avahi connection whilst
    already doing so (Ubuntu #877967).


author: Tim Waugh <twaugh@redhat.com> 1:1.5.0-23
changelog:
  - Detangle cups-serverbin-compat.patch from cups-lspp.patch.
  - Bind to datagram socket as well in systemd cups.socket unit file, to
    prevent that port being stolen by another service (bug #760070).


author: Tim Waugh <twaugh@redhat.com> 1:1.5.0-26
changelog:
  - Replace newline characters with spaces in reported Device IDs
    (bug #782129, STR #4005).
  - Don't accept Device URIs of '\0' from SNMP devices
    (bug #770646, STR #4004).


author: Remi Collet <remi@fedoraproject.org> 1:1.5.0-28
changelog:
  - build against php 5.4.0, patch for STR #3999
  - add filter to fix private-shared-object-provides
  - add %check for php extension


author: Tim Waugh <twaugh@redhat.com> 1:1.5.2-2
changelog:
  - Synthesize notify-printer-uri for job-completed events where the job
    never started processing (bug #784786, STR #4014).
  - Removed banners from LSPP patch on Dan Walsh's advice.


author: Tim Waugh <twaugh@redhat.com> 1:1.5.2-8
changelog:
  - Avoid systemd PrivateTmp bug by explicitly requiring the fixed
    version of systemd (bug #807672).


author: Tim Waugh <twaugh@redhat.com> 1:1.5.2-10
changelog:
  - Removed private-shared-object-provides filter lines as they are not
    necessary (see bug #807767 comment #3).


author: Jiri Popelka <jpopelka@redhat.com> 1:1.5.2-11
changelog:
  - The IPP backend did not always setup username/password authentication
    for printers (bug #810007, STR #3985)
  - Detect authentication errors for all requests.
    (bug #810007, upstream commit revision10277)


author: Jiri Popelka <jpopelka@redhat.com> 1:1.5.2-12
changelog:
  - Install /usr/lib/tmpfiles.d/cups-lp.conf to support /dev/lp* devices (#812641)
  - Move /etc/tmpfiles.d/cups.conf to /usr/lib/tmpfiles.d/ (#812641)


author: Jiri Popelka <jpopelka@redhat.com> 1:1.5.2-13
changelog:
  - Add triggers for samba4-client. (#817110)
  - No need to define BuildRoot and clean it in clean and install section anymore.
  - %defattr no longer needed in %files sections.


author: Jiri Popelka <jpopelka@redhat.com> 1:1.6.1-1
changelog:
  - 1.6.1
   - simplified systemd.patch due to removed CUPS Browsing protocol (STR #3922)
   - removed:
     textonly filter - moved to cups-filters
     pstopdf filter - cups-filters also has pstopdf (different)
     PHP module - moved to cups-filters (STR #3932)
     serial.patch - moved to cups-filters
     getpass.patch - r10140 removed the getpass() use
     snmp-quirks.patch - fixed upstream (r10493)
     avahi patches - merged upstream (STR #3066)
     icc.patch - merged upstream (STR #3808)
   - TODO:
     - do we need cups-build.patch ?
  - added filesystem sub-package (#624695)
  - use macroized systemd scriptlets


author: Tim Waugh <twaugh@redhat.com> 1:1.6.1-11
changelog:
  - Apply upstream fix for CVE-2012-5519 (STR #4223, bug #875898).
    Migrate configuration keywords as needed.


author: Tim Waugh <twaugh@redhat.com> 1:1.6.1-13
changelog:
  - Applied additional upstream patch for CVE-2012-5519 so that the
    RemoteRoot keyword is recognised in the correct configuration file.


author: Tim Waugh <twaugh@redhat.com> 1:1.6.1-16
changelog:
  - Additional fix relating to CVE-2012-5519 to avoid misleading error
    message about actions to take to enable file device URIs.


author: Jiri Popelka <jpopelka@redhat.com> 1:1.6.1-17
changelog:
  - Migrate cups-lpd from xinetd to systemd socket activatable service (#884641).
  - Clean up old Requires/Conflicts/Obsoletes/Provides.


author: Jiri Popelka <jpopelka@redhat.com> - 1:1.6.1-23
changelog:
  - Removed obsolete browsing directives from cupsd.conf (bug #880826, STR #4157).
  - Updated summary and descriptions (#882982).
  - Fixed bogus dates in changelog.


author: Tim Waugh <twaugh@redhat.com>
changelog:
  - cups-dbus-utf.patch: now that the scheduler only accepts valid UTF-8
    strings for job-name, there's no need to validate it as UTF-8 in the
    dbus notifier.


author: Tim Waugh <twaugh@redhat.com> - 1:1.7-0.19.rc1
changelog:
  - Fixed avahi-no-threaded patch (was missing part of cupsd.h). Thanks
    to Joseph Wang for spotting it.


author: Tim Waugh <twaugh@redhat.com> - 1:1.7-0.26.rc1
changelog:
  - Reverted upstream change to FINAL_CONTENT_TYPE in order to fix
    printing to remote CUPS servers (bug #1010580).


author: Tim Waugh <twaugh@redhat.com> - 1:1.7.0-9
changelog:
  - dbus notifier: call _exit when handling SIGTERM (STR #4314).
  - Use '-f' when using rm in %setup section.
  - Fixed avahi-no-threaded patch so it removes a call to
    avahi_threaded_poll_stop() (bug #1044602).


author: Tim Waugh <twaugh@redhat.com> - 1:1.7.0-10
changelog:
  - Removed cups-dbus-utf8.patch as no longer needed (see STR #4314).
  - Return jobs in rank order when handling IPP-Get-Jobs (STR #4326).


author: Tim Waugh <twaugh@redhat.com> - 1:1.7.1-6
changelog:
  - Track local default in cupsEnumDests() (STR #4332).
  - libcups: avoid race condition when sending IPP requests (STR #4386).
  - Prevent feedback loop when fetching error_log over HTTP (STR #4366).


author: Jiri Popelka <jpopelka@redhat.com> - 1:1.7.1-9
changelog:
  - New client subpackage containing command line client tools (bug #1002342).
  - Removed unneeded Group tags.
  - Removed 'Requires: /sbin/chkconfig'.
  - Moved 'Provides: lpd' to lpd subpackage.


author: Tim Waugh <twaugh@redhat.com> - 1:1.7.5-4
changelog:
  - Removed old one-off trigger now it's no longer needed.
  - Run systemd postun script for path and socket unit files as well as
    the main service unit file.
  - Upstream patch for STR #4396, pre-requisite for STR #2913 patch.
  - Upstream patch for STR #2913 to limit Get-Jobs replies to 500 jobs
    (bug #421671).


author: Tim Waugh <twaugh@redhat.com> - 1:2.0.0-4
changelog:
  - Can no longer reproduce bug #1010580 so removing final-content-type
    patch as it causes issues for some backends (bug #1149244).


author: Tim Waugh <twaugh@redhat.com> - 1:2.0.0-10
changelog:
  - cups-lspp.patch: use cupsdLogJob() when appropriate.
  - Fixed some warnings in cups-lspp.patch.
  - New systemd journal fields CUPS_DEST and CUPS_PRINTER, as well as
    accurate code location fields.


author: Tim Waugh <twaugh@redhat.com> - 1:2.0.0-11
changelog:
  - Removed openssl requirements from spec file as it is no longer
    supported upstream (see bug #1161235).


author: Tim Waugh <twaugh@redhat.com> - 1:2.0.0-12
changelog:
  - Re-introduce SSLOptions configuration directive, disable SSL3 by
    default (STR #4476).
  - Enable SSL again via GnuTLS (bug #1161235).


author: Tim Waugh <twaugh@redhat.com> - 1:2.0.3-3
changelog:
  - Fix slow resume of jobs after restart (STR #4646).
  - Fix redirection from CGI scripts (bug #1232030, STR #4538).


author: Zdenek Dohnal <zdohnal@redhat.com> - 1:2.2.1-3
changelog:
  - Unable to print from Windows (7) on a Cups-Server(2.2.1-1) with german umlauts in the filename (bug #1386751)


author: Zdenek Dohnal <zdohnal@redhat.com> - 1:2.2.3-4
changelog:
  - fixing issue with #1437065 - makes res_init() call to local resolver and keeps error message, but no hard exit for cupsd


author: Zdenek Dohnal <zdohnal@redhat.com> - 1:2.2.6-21
changelog:
  - 1602469 - fixed covscan issues
  - 1625899 - cups 2.2.6 lpr command fails against old cups 1.3.9 server
  - 1625913 - ssl options aren't initialized when no SSLOptions directive is set in /etc/cups/client.conf
  - 1618009 - Enabling cups.path causes high load when jobs are submitted to CUPS
  - 1630805 - Make cups systemd unit files more upstream-like


author: Zdenek Dohnal <zdohnal@redhat.com> - 1:2.2.6-22
changelog:
  - 1622431 - Jobs with multiple files don't complete when backend fails
  - CVE-2018-4700 cups: Predictable session cookie breaks CSRF protection [rhel-8]


author: Zdenek Dohnal <zdohnal@redhat.com> - 1:2.2.6-30
changelog:
  - 1774462 - CVE-2019-8675 - buffer overflow in SNMP and IPP, memory disclosure and DoS in scheduler
  - 1774463 - CVE-2019-8696


author: Zdenek Dohnal <zdohnal@redhat.com> - 1:2.2.6-35
changelog:
  - 1825254 - CVE-2020-3898 cups: heap based buffer overflow in libcups's ppdFindOption() in ppd-mark.c


author: Zdenek Dohnal <zdohnal@redhat.com> - 1:2.2.6-36
changelog:
  - 1838449 - ipp/socket backends connect to turned off device for eternity (contimeout is not applied)
  - 1689207 - Add failover backend
  - 1833516 - DirtyCleanInterval ignored if there are open client connections


author: Zdenek Dohnal <zdohnal@redhat.com> - 1:2.2.6-39
changelog:
  - 1941437 - cupsd doesn't log job ids when logging into journal
  - 1782216 - Print queue is paused after ipp backend ends with CUPS_BACKEND_STOP
  - 1938384 - CUPS doesn't start if sssd starts after cupsd


author: Zdenek Dohnal <zdohnal@redhat.com> - 1:2.2.6-40
changelog:
  - 1955964 - PreserveJobHistory doesn't work with seconds
  - 1927452 - CVE-2020-10001 cups: access to uninitialized buffer in ipp.c [rhel-8]


author: Zdenek Dohnal <zdohnal@redhat.com> - 1:2.2.6-41
changelog:
  - 2006987 - Unauthenticated users can't move print jobs in Web UI
  - 2017919 - Setting 'MaxJobTime 0' does not set a job time to unlimited
  - 1726383 - "lpadmin -p <queue> -o cupsSNMPSupplies:false" doesn't work
  - 1982891 - Printing of banner before PCL file only prints banner
  - 2006591 - Trying to restart and hold a job doesn't work
  - 1811716 - lpr to non-existent printer reports incorrect error


author: Zdenek Dohnal <zdohnal@redhat.com> - 1:2.2.6-46
changelog:
  - 2074684 - lp to a remote server takes a long time
  - 2074736 - CUPS is too chatty about "Removing document files." in debug mode


author: Zdenek Dohnal <zdohnal@redhat.com> - 1:2.2.6-52
changelog:
  - 2217178 - Delays printing to lpd when reserved ports are exhausted
  - 2217283 - The command "cancel -x <job>" does not remove job files
  - 2217955 - Enlarge backlog queue for listen() in cupsd
  - CVE-2023-34241 cups: use-after-free in cupsdAcceptClient() in scheduler/client.c
  - CVE-2023-32324 cups: heap buffer overflow may lead to DoS


author: Zdenek Dohnal <zdohnal@redhat.com> - 1:2.2.6-64
changelog:
  - RHEL-122045 CVE-2025-58364 cups: Null Pointer Dereference in CUPS ipp_read_io() Leading to Remote DoS


author: Zdenek Dohnal <zdohnal@redhat.com> - 1:2.2.6-65
changelog:
  - RHEL-129729 CVE-2025-58436 cups: Slow client communication leads to a possible DoS attack
  - RHEL-129720 CVE-2025-61915 cups: Local denial-of-service via cupsd.conf update and related issues


author: Tim Powers <timp@redhat.com>
changelog:
  - changelog started
  - general cleanups, changed prefix to /usr, added manpage to files section
  - including in Powertools


author: Tim Powers <timp@redhat.com>
changelog:
  - update to 7.4.1 to fix bug #20337, problems with curl -c
  - not using patch anymore, it's included in the new source. Keeping
    for reference


author: Nalin Dahyabhai <nalin@redhat.com>
changelog:
  - include curl-config in curl-devel
  - update to 7.8 to fix memory leak and strlcat() symbol pollution from libcurl


author: Joe Orton <jorton@redhat.com> 7.9.8-2
changelog:
  - fix `curl-config --libs` output for libdir!=/usr/lib
  - remove docs/LIBCURL from docs list; remove unpackaged libcurl.la
  - libtoolize and reconf


author: Adrian Havill <havill@redhat.com> 7.10.6-7
changelog:
  - aclocal before libtoolize
  - move OpenLDAP license so it's present as a doc file, present in
    both the source and binary as per conditions


author: Adrian Havill <havill@redhat.com> 7.12.1-1
changelog:
  - upgrade to 7.12.1
  - enable GSSAPI auth (#129353)
  - enable I18N domain names (#134595)
  - workaround for broken ProFTPD SSL auth (#134133). Thanks to
    Aleksandar Milivojevic


author: Adrian Havill <havill@redhat.com> 7.12.3-1
changelog:
  - Upgrade to 7.12.3, which uses poll() for FDSETSIZE limit (#134794)
  - require libidn-devel for devel subpkg (#141341)
  - remove proftpd kludge; included upstream


author: Joe Orton <jorton@redhat.com> 7.12.3-3
changelog:
  - don't pass /usr to --with-libidn to remove "-L/usr/lib" from
    'curl-config --libs' output on x86_64.


author: Ivana Varekova <varekova@redhat.com> - 7.15.1-2
changelog:
  - fix multilib problem - #181290 - 
    curl-devel.i386 not installable together with curl-devel.x86-64


author: Jindrich Novy <jnovy@redhat.com> - 7.16.0-2
changelog:
  - fix BuildRoot
  - add Requires: pkgconfig for curl-devel
  - move LDFLAGS and LIBS to Libs.private in libcurl.pc.in (#213278)


author: Jindrich Novy <jnovy@redhat.com> 7.16.2-4
changelog:
  - another series of review fixes (#225671),
    thanks to Paul Howarth
  - check version of ldap library automatically
  - don't use %makeinstall and preserve timestamps
  - drop useless patches


author: Jindrich Novy <jnovy@redhat.com> 7.16.3-1
changelog:
  - update to 7.16.3
  - drop .print patch, applied upstream
  - next series of merge review fixes by Paul Howarth
  - remove aclocal stuff, no more needed
  - simplify makefile arguments
  - don't reference standard library paths in libcurl.pc
  - include docs/CONTRIBUTE


author: Jindrich Novy <jnovy@redhat.com> 7.16.4-5
changelog:
  - add support for the NSS PKCS#11 pem reader so the command-line is the
    same for both OpenSSL and NSS by Rob Crittenden (rcritten@redhat.com)
  - switch to NSS again


author: Jindrich Novy <jnovy@redhat.com> 7.17.1-1
changelog:
  - update to curl 7.17.1
  - include patch to enable SSL usage in NSS when a socket is opened
    nonblocking, thanks to Rob Crittenden (rcritten@redhat.com)


author: Jindrich Novy <jnovy@redhat.com> 7.17.1-3
changelog:
  - drop useless ldap library detection since curl doesn't
    dlopen()s it but links to it -> BR: openldap-devel
  - enable LDAPS support (#225671), thanks to Paul Howarth
  - BR: krb5-devel to reenable GSSAPI support
  - simplify build process
  - update description


author: Jindrich Novy <jnovy@redhat.com> 7.18.1-1
changelog:
  - update to curl 7.18.1 (fixes #397911)
  - add ABI docs for libcurl
  - remove --static-libs from curl-config
  - drop curl-config patch, obsoleted by @SSL_ENABLED@ autoconf
    substitution (#432667)


author: Jindrich Novy <jnovy@redhat.com> 7.18.1-2
changelog:
  - spec cleanup, thanks to Paul Howarth (#225671)
    - drop BR: libtool
    - convert CHANGES and README to UTF-8
    - _GNU_SOURCE in CFLAGS is no more needed
    - remove bogus rpath


author: Jindrich Novy <jnovy@redhat.com> 7.19.4-1
changelog:
  - update to 7.19.4 (fixes CVE-2009-0037)
  - fix leak in curl_easy* functions, thanks to Kamil Dudka
  - drop nss-fix patch, applied upstream


author: Jindrich Novy <jnovy@redhat.com> 7.19.4-2
changelog:
  - drop .easy-leak patch, causes problems in pycurl (#488791)
  - fix libcurl-devel dependencies (#488895)


author: Kamil Dudka <kdudka@redhat.com> 7.19.4-6
changelog:
  - upstream patch fixing memory leak in lib/nss.c (#453612)
  - remove redundant dependency of libcurl-devel on libssh2-devel


author: Kamil Dudka <kdudka@redhat.com> 7.19.5-8
changelog:
  - do not pre-login to all PKCS11 slots, it causes problems with HW tokens
  - try to select client certificate automatically when not specified, thanks
    to Claes Jakobsson


author: Kamil Dudka <kdudka@redhat.com> 7.19.6-1
changelog:
  - new upstream release, dropped applied patches
  - changed NSS code to not ignore the value of ssl.verifyhost and produce more
    verbose error messages (#516056)


author: Kamil Dudka <kdudka@redhat.com> 7.19.6-3
changelog:
  - avoid tight loop during a sftp upload
  - http://permalink.gmane.org/gmane.comp.web.curl.library/24744


author: Kamil Dudka <kdudka@redhat.com> 7.19.6-4
changelog:
  - use pkg-config to find nss and libssh2 if possible
  - better patch (not only) for SCP/SFTP polling
  - improve error message for not matching common name (#516056)


author: Kamil Dudka <kdudka@redhat.com> 7.19.7-1
changelog:
  - new upstream release, dropped applied patches
  - workaround for broken TLS servers (#525496, #527771)


author: Kamil Dudka <kdudka@redhat.com> 7.19.7-3
changelog:
  - fix crash on doubly closed NSPR descriptor, patch contributed
    by Kevin Baughman (#534176)
  - new version of patch for broken TLS servers (#525496, #527771)


author: Kamil Dudka <kdudka@redhat.com> 7.19.7-11
changelog:
  - upstream patch adding a new option -J/--remote-header-name
  - dropped temporary workaround for #545779


author: Kamil Dudka <kdudka@redhat.com> 7.20.0-1
changelog:
  - new upstream release - added support for IMAP(S), POP3(S), SMTP(S) and RTSP
  - dropped patches applied upstream
  - dropped curl-7.16.0-privlibs.patch no longer useful
  - a new patch forcing -lrt when linking the curl tool and test-cases


author: Kamil Dudka <kdudka@redhat.com> 7.20.0-3
changelog:
  - throw CURLE_SSL_CERTPROBLEM in case peer rejects a certificate (#565972)
  - valgrind temporarily disabled (#574889)
  - kerberos installation prefix has been changed


author: Paul Howarth <paul@city-fan.org> 7.20.1-3
changelog:
  - replace Rawhide s390-sleep patch with a more targeted patch adding a
    delay after tests 513 and 514 rather than after all tests


author: Kamil Dudka <kdudka@redhat.com> 7.20.1-4
changelog:
  - upstream patch preventing failure of test536 with threaded DNS resolver
  - upstream patch preventing SSL handshake timeout underflow


author: Kamil Dudka <kdudka@redhat.com> 7.20.1-5
changelog:
  - CRL support now works again (#581926)
  - make it possible to start a testing OpenSSH server when building with SELinux
    in the enforcing mode (#521087)


author: Kamil Dudka <kdudka@redhat.com> 7.21.0-1
changelog:
  - new upstream release, drop applied patches
  - update of %description
  - disable valgrind for certain test-cases (libssh2 problem)


author: Kamil Dudka <kdudka@redhat.com> 7.21.1-2
changelog:
  - re-enable test575 on s390(x), already fixed (upstream commit d63bdba)
  - modify system headers to work around gcc bug (#617757)
  - curl -T now ignores file size of special files (#622520)
  - fix kerberos proxy authentication for https (#625676)
  - work around glibc/valgrind problem on x86_64 (#626470)


author: Paul Howarth <paul@city-fan.org> 7.21.1-3
changelog:
  - fix up patches so there's no need to run autotools in the rpm build
  - drop buildreq automake
  - drop dependency on automake for devel package from F-14, where
    %{_datadir}/aclocal is included in the filesystem package
  - drop dependency on pkgconfig for devel package from F-11, where
    pkgconfig dependencies are auto-generated


author: Kamil Dudka <kdudka@redhat.com> 7.21.2-4
changelog:
  - prevent FTP client from hanging on unrecognized ABOR response (#649347)
  - return more appropriate error code in case FTP server session idle
    timeout has exceeded (#650255)


author: Kamil Dudka <kdudka@redhat.com> 7.21.2-5
changelog:
  - do not send QUIT to a dead FTP control connection (#650255)
  - pull back glibc's implementation of str[n]casecmp(), #626470 appears fixed


author: Paul Howarth <paul@city-fan.org> 7.21.3-1
changelog:
  - update to 7.21.3:
    - added --noconfigure switch to testcurl.pl
    - added --xattr option
    - added CURLOPT_RESOLVE and --resolve
    - added CURLAUTH_ONLY
    - added version-check.pl to the examples dir
    - check for libcurl features for some command line options
    - Curl_setopt: disallow CURLOPT_USE_SSL without SSL support
    - http_chunks: remove debug output
    - URL-parsing: consider ? a divider
    - SSH: avoid using the libssh2_ prefix
    - SSH: use libssh2_session_handshake() to work on win64
    - ftp: prevent server from hanging on closed data connection when stopping
      a transfer before the end of the full transfer (ranges)
    - LDAP: detect non-binary attributes properly
    - ftp: treat server's response 421 as CURLE_OPERATION_TIMEDOUT
    - gnutls->handshake: improved timeout handling
    - security: pass the right parameter to init
    - krb5: use GSS_ERROR to check for error
    - TFTP: resend the correct data
    - configure: fix autoconf 2.68 warning: no AC_LANG_SOURCE call detected
    - GnuTLS: now detects socket errors on Windows
    - symbols-in-versions: updated en masse
    - added a couple of examples that were missing from the tarball
    - Curl_send/recv_plain: return errno on failure
    - Curl_wait_for_resolv (for c-ares): correct timeout
    - ossl_connect_common: detect connection re-use
    - configure: prevent link errors with --librtmp
    - openldap: use remote port in URL passed to ldap_init_fd()
    - url: provide dead_connection flag in Curl_handler::disconnect
    - lots of compiler warning fixes
    - ssh: fix a download resume point calculation
    - fix getinfo CURLINFO_LOCAL* for reused connections
    - multi: the returned running handles counter could turn negative
    - multi: only ever consider pipelining for connections doing HTTP(S)
  - drop upstream patches now in tarball
  - update bz650255 and disable-test1112 patches to apply against new codebase
  - add workaround for false-positive glibc-detected buffer overflow in tftpd
    test server with FORTIFY_SOURCE (similar to #515361)


author: Kamil Dudka <kdudka@redhat.com> 7.21.4-1
changelog:
  - new upstream release
  - avoid memory leak on SSL connection failure (upstream commit a40f58d)
  - work around valgrind bug (#678518)


author: Kamil Dudka <kdudka@redhat.com> 7.21.7-3
changelog:
  - fix SIGSEGV of curl -O -J given more than one URL (#723075)
  - introduce the --delegation option of curl (#730444)
  - initialize NSS with no database if the selected database is broken (#728562)


author: Paul Howarth <paul@city-fan.org> 7.25.0-1
changelog:
  - new upstream release (#806264)
  - fix character encoding of docs with a patch rather than just iconv
  - update debug and multilib patches
  - don't use macros for commands
  - reduce size of %prep output for readability


author: Kamil Dudka <kdudka@redhat.com> 7.25.0-2
changelog:
  - use NSS_InitContext() to initialize NSS if available (#738456)
  - provide human-readable names for NSS errors (upstream commit a60edcc6)


author: Kamil Dudka <kdudka@redhat.com> 7.27.0-3
changelog:
  - use the upstream facility to disable problematic tests
  - do not crash if MD5 fingerprint is not provided by libssh2


author: Kamil Dudka <kdudka@redhat.com> 7.28.1-2
changelog:
  - prevent NSS from crashing on client auth hook failure
  - clear session cache if a client cert from file is used
  - fix error messages for CURLE_SSL_{CACERT,CRL}_BADFILE


author: Kamil Dudka <kdudka@redhat.com> 7.29.0-3
changelog:
  - switch SSL socket into non-blocking mode after handshake
  - drop the hide_selinux.c hack no longer needed in %check


author: Kamil Dudka <kdudka@redhat.com> 7.29.0-4
changelog:
  - do not ignore poll() failures other than EINTR (#919127)
  - curl_global_init() now accepts the CURL_GLOBAL_ACK_EINTR flag (#919127)


author: Kamil Dudka <kdudka@redhat.com> 7.30.0-1
changelog:
  - new upstream release (fixes CVE-2013-1944)
  - prevent test-suite failure due to using non-default port ranges in tests


author: Kamil Dudka <kdudka@redhat.com> 7.33.0-1
changelog:
  - new upstream release
  - fix missing initialization in NTLM code causing test 906 to fail
  - fix missing initialization in SSH code causing test 619 to fail


author: Kamil Dudka <kdudka@redhat.com> 7.37.1-1
changelog:
  - new upstream release
  - fix endless loop with GSSAPI proxy auth (patches by David Woodhouse, #1118751)


author: Kamil Dudka <kdudka@redhat.com> 7.42.0-1
changelog:
  - new upstream release (fixes CVE-2015-3143, CVE-2015-3144, CVE-2015-3145,
    and CVE-2015-3148)
  - implement public key pinning for NSS backend (#1195771)
  - do not run flaky test-cases in %check


author: Kamil Dudka <kdudka@redhat.com> 7.46.0-1
changelog:
  - disable silent builds (suggested by Paul Howarth)
  - use default port numbers when running the upstream test-suite
  - install zsh completion script
  - new upstream release


author: Kamil Dudka <kdudka@redhat.com> 7.50.0-1
changelog:
  - run HTTP/2 tests only on Intel for now to work around #1358845
  - require nss-pem because it is no longer included in the nss package (#1347336)
  - fix HTTPS and FTPS tests (work around stunnel bug #1358810)
  - new upstream release


author: Kamil Dudka <kdudka@redhat.com> 7.50.1-2
changelog:
  - work around race condition in PK11_FindSlotByName()
  - fix incorrect use of a previously loaded certificate from file
    (related to CVE-2016-5420)


author: Kamil Dudka <kdudka@redhat.com> 7.51.0-1
changelog:
  - temporarily disable failing libidn2 test-cases
  - new upstream release, which fixes the following vulnerabilities
      CVE-2016-8615 - Cookie injection for other servers
      CVE-2016-8616 - Case insensitive password comparison
      CVE-2016-8617 - Out-of-bounds write via unchecked multiplication
      CVE-2016-8618 - Double-free in curl_maprintf
      CVE-2016-8619 - Double-free in krb5 code
      CVE-2016-8620 - Glob parser write/read out of bounds
      CVE-2016-8621 - curl_getdate out-of-bounds read
      CVE-2016-8622 - URL unescape heap overflow via integer truncation
      CVE-2016-8623 - Use-after-free via shared cookies
      CVE-2016-8624 - Invalid URL parsing with '#'
      CVE-2016-8625 - IDNA 2003 makes curl use wrong host


author: Kamil Dudka <kdudka@redhat.com> 7.53.0-1
changelog:
  - do not use valgrind on ix86 until sqlite is rebuilt by patched GCC (#1423434)
  - new upstream release (fixes CVE-2017-2629)


author: Paul Howarth <paul@city-fan.org> 7.53.1-7
changelog:
  - add %post and %postun scriptlets for libcurl-minimal
  - libcurl-minimal provides both libcurl and libcurl%{?_isa}
  - remove some legacy spec file cruft


author: Kamil Dudka <kdudka@redhat.com> 7.54.0-2
changelog:
  - nss: use libnssckbi.so as the default source of trust
  - nss: do not leak PKCS #11 slot while loading a key (#1444860)


author: Kamil Dudka <kdudka@redhat.com> 7.55.0-1
changelog:
  - drop multilib fix for libcurl header files no longer needed
  - new upstream release, which fixes the following vulnerabilities
      CVE-2017-1000099 - FILE buffer read out of bounds
      CVE-2017-1000100 - TFTP sends more than buffer size
      CVE-2017-1000101 - URL globbing out of bounds read


author: Kamil Dudka <kdudka@redhat.com> - 7.57.0-1
changelog:
  - new upstream release, which fixes the following vulnerabilities
      CVE-2017-8816 - curl: NTLM buffer overflow via integer overflow
      CVE-2017-8817 - curl: FTP wildcard out of bounds read
      CVE-2017-8818 - curl: SSL out of buffer access


author: Kamil Dudka <kdudka@redhat.com> - 7.58.0-1
changelog:
  - new upstream release, which fixes the following vulnerabilities
      CVE-2018-1000005 - curl: HTTP/2 trailer out-of-bounds read
      CVE-2018-1000007 - curl: HTTP authentication leak in redirects


author: Kamil Dudka <kdudka@redhat.com> - 7.58.0-3
changelog:
  - temporarily work around internal compiler error on x86_64 (#1540549)
  - disable brp-ldconfig to make RemovePathPostfixes work with shared libs again


author: Paul Howarth <paul@city-fan.org> - 7.58.0-6
changelog:
  - switch to %ldconfig_scriptlets
  - drop legacy BuildRoot: and Group: tags
  - enforce versioned libssh dependency for libcurl


author: Paul Howarth <paul@city-fan.org> - 7.58.0-7
changelog:
  - Add explicity-used build requirements
  - Fix libcurl soname version number in %files list to avoid accidental soname
    bumps


author: Kamil Dudka <kdudka@redhat.com> - 7.59.0-1
changelog:
  - new upstream release, which fixes the following vulnerabilities
      CVE-2018-1000120 - FTP path trickery leads to NIL byte out of bounds write
      CVE-2018-1000121 - LDAP NULL pointer dereference
      CVE-2018-1000122 - RTSP RTP buffer over-read


author: Kamil Dudka <kdudka@redhat.com> - 7.60.0-1
changelog:
  - new upstream release, which fixes the following vulnerabilities
      CVE-2018-1000300 - FTP shutdown response buffer overflow
      CVE-2018-1000301 - RTSP bad headers buffer over-read


author: Kamil Dudka <kdudka@redhat.com> - 7.61.0-1
changelog:
  - new upstream release, which fixes the following vulnerability
      CVE-2018-0500 - SMTP send heap buffer overflow


author: Kamil Dudka <kdudka@redhat.com> - 7.61.0-3
changelog:
  - disable flaky test 1900, which covers deprecated HTTP pipelining
  - adapt test 323 for updated OpenSSL


author: Kamil Dudka <kdudka@redhat.com> - 7.61.1-6
changelog:
  - SASL password overflow via integer overflow (CVE-2018-16839)
  - fix use-after-free in handle close (CVE-2018-16840)
  - fix bad arethmetic when outputting warnings to stderr (CVE-2018-16842)


author: Kamil Dudka <kdudka@redhat.com> - 7.61.1-10
changelog:
  - fix SMTP end-of-response out-of-bounds read (CVE-2019-3823)
  - fix NTLMv2 type-3 header stack buffer overflow (CVE-2019-3822)
  - fix NTLM type-2 out-of-bounds buffer read (CVE-2018-16890)
  - xattr: strip credentials from any URL that is stored (CVE-2018-20483)


author: Kamil Dudka <kdudka@redhat.com> - 7.61.1-12
changelog:
  - double free due to subsequent call of realloc() (CVE-2019-5481)
  - fix heap buffer overflow in function tftp_receive_packet() (CVE-2019-5482)
  - fix TFTP receive buffer overflow (CVE-2019-5436)


author: Kamil Dudka <kdudka@redhat.com> - 7.61.1-15
changelog:
  - do not crash when HTTPS_PROXY and NO_PROXY are used together (#1873327)
  - libcurl: wrong connect-only connection (CVE-2020-8231)


author: Kamil Dudka <kdudka@redhat.com> - 7.61.1-18
changelog:
  - http: send payload when (proxy) authentication is done (#1918692)
  - curl: Inferior OCSP verification (CVE-2020-8286)
  - libcurl: FTP wildcard stack overflow (CVE-2020-8285)
  - curl: trusting FTP PASV responses (CVE-2020-8284)


author: Kamil Dudka <kdudka@redhat.com> - 7.61.1-19
changelog:
  - make `curl --head file://` work as expected (#1947493)
  - prevent automatic referer from leaking credentials (CVE-2021-22876)


author: Kamil Dudka <kdudka@redhat.com> - 7.61.1-21
changelog:
  - fix TELNET stack contents disclosure again (CVE-2021-22925)
  - fix TELNET stack contents disclosure (CVE-2021-22898)
  - fix bad connection reuse due to flawed path name checks (CVE-2021-22924)
  - disable metalink support to fix the following vulnerabilities
      CVE-2021-22923 - metalink download sends credentials
      CVE-2021-22922 - wrong content via metalink not discarded


author: Kamil Dudka <kdudka@redhat.com> - 7.61.1-22
changelog:
  - fix STARTTLS protocol injection via MITM (CVE-2021-22947)
  - fix protocol downgrade required TLS bypass (CVE-2021-22946)


author: Kamil Dudka <kdudka@redhat.com> - 7.61.1-23
changelog:
  - fix credential leak on redirect (CVE-2022-27774)
  - fix auth/cookie leak on redirect (CVE-2022-27776)
  - fix OAUTH2 bearer bypass in connection re-use (CVE-2022-22576)


author: Kamil Dudka <kdudka@redhat.com> - 7.61.1-24
changelog:
  - fix too eager reuse of TLS and SSH connections (CVE-2022-27782)
  - fix invalid type in printf() argument detected by Coverity


author: Kamil Dudka <kdudka@redhat.com> - 7.61.1-25
changelog:
  - setopt: enable CURLOPT_SSH_KNOWNHOSTS and CURLOPT_SSH_KEYFUNCTION (#2063703)
  - fix HTTP compression denial of service (CVE-2022-32206)
  - fix FTP-KRB bad message verification (CVE-2022-32208)


author: Kamil Dudka <kdudka@redhat.com> - 7.61.1-31
changelog:
  - fix GSS delegation too eager connection re-use (CVE-2023-27536)
  - fix FTP too eager connection reuse (CVE-2023-27535)


author: Jacek Migacz <jmigacz@redhat.com> - 7.61.1-34
changelog:
  - when keyboard-interactive auth fails, try password (#2229800)
  - cap SFTP packet size sent (RHEL-5311)
  - unify the upload/method handling (CVE-2023-28322)
  - fix cookie injection with none file (CVE-2023-38546)
  - fix HTTP2 connection failure with HTTP2 framing layer (RHEL-5657)
  - lowercase the domain names before PSL checks (CVE-2023-46218)


author: Jacek Migacz <jmigacz@redhat.com> - 7.61.1-34.el8_10.3
changelog:
  - asyn-thread: create a socketpair to wait on (RHEL-34906)
  - fix crash, when talking to a NTLM proxy in FIPS mode (RHEL-32641)


author: Jacek Migacz <jmigacz@redhat.com> - 7.61.1-34.el8_10.4
changelog:
  - make up incomplete patch for host name wildcard checking (RHEL-5680)
  - asyn-thread: issue CURL_POLL_REMOVE before closing socket (RHEL-85602)


author: Simo Sorce <simo@redhat.com> - 2.1.27-0.4rc7
changelog:
  - Add patch form Upstream PR559 to use RC4 implementation from OpenSSL
  - Resolves bz#1618744
  - Fix multilib issue bz#1663120


author: Jeff Moyer <jmoyer@redhat.com> - 67-1.el8
changelog:
  - Rebase to v67.  This brings in the following features:
    - support for the 'security frozen' sysfs attribute
    - support for using pmem as system ram
    - various cleanup and bug fixes
  - Fix load-keys failure in initramfs (Jeff Moyer)
  - Resolves: bz#1724531 bz#1730673 bz#1741164 bz#1741165 bz#1749888 bz#1749889


author: Jeff Moyer <jmoyer@redhat.com> - 71.1-4.el8
changelog:
  - Pull in fixes from upstream v72 and v73 (Jeff Moyer)
    - Fix enable-namespace all reporting errors incorrectly
    - Add support for inject-smart on papr scm
  - Related: bz#2090190 bz#1986185 bz#2040074


author: Ray Strode <rstrode@redhat.com> - 1:1.12.8-22
changelog:
  - Use hangup signal instead of termination signal to
    kill sesssion monitoring script to appeach tcsh.
    Related: #2089362


author: Ray Strode <rstrode@redhat.com> - 1:1.12.8-23
changelog:
  - Address race for very short running sessions in SSH
    session monitoring script.
    Related: #2089362


author: Ray Strode <rstrode@redhat.com> - 1.12.8-25
changelog:
  - Ensure only one dbus-daemon is spawned for all shells sharing
    a single connection.
    Resolves: #2189201


author: Zhao Hang <wb-zh951434@alibaba-inc.com> - 1.12.8-26.0.1
changelog:
  - Add doc sub package, requires and provides
  - Fix build failure(Chang Gao)
  - Fix CVE-2023-34969 (Bo Liu)


author: Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 1.2.4-9
changelog:
  - Python 2 binary package renamed to python2-dbus
    See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3


author: Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 1.2.4-10
changelog:
  - Also add Provides for the old name without %_isa
  - Use %python_provide for the python3 subpackage and drop manual Provide which
    conflicts with %python_provide in the python2 subpackage.


author: Jeremy Katz <katzj@redhat.com> 2.00.08-5
changelog:
  - Fix sysfs patch to find sysfs
  - Take patch from dwalsh and tweak a little for setting SELinux contexts on
    device node creation and also do it on the symlink creation.  
    Part of this should probably be pushed down to device-mapper instead


author: Alasdair Kergon <agk@redhat.com> 2.00.10-1
changelog:
  - Update to version 2.00.10, which incorporates the RH-specific patches
    and includes various fixes and enhancements detailed in WHATS_NEW.


author: Alasdair Kergon <agk@redhat.com> 2.00.12-1
changelog:
  - Install default /etc/lvm/lvm.conf.
  - Move non-static binaries to /usr/sbin.
  - Add temporary links in /sbin to lvm.static until rc.sysinit gets updated.


author: Jeremy Katz <katzj@redhat.com> - 2.00.20-2
changelog:
  - add patch for iSeries viodasd support
  - add patch to check file type using stat(2) if d_type == DT_UNKNOWN (#129674)


author: Alasdair Kergon <agk@redhat.com> - 2.00.24-1
changelog:
  - More upstream fixes.  (Always check WHATS_NEW file for details.)
  - Add requested BuildRequires. [bz 124916, 132408]


author: Alasdair Kergon <agk@redhat.com> - 2.01.07-1.0
changelog:
  - Remove build directory from built-in path.
  - Extra /dev scanning required for clustered operation.


author: Alasdair Kergon <agk@redhat.com> - 2.01.08-1.0
changelog:
  - Improve detection of external changes affecting internal cache.
  - Add clustered VG attribute.
  - Suppress rmdir opendir error message.


author: Alasdair Kergon <agk@redhat.com> - 2.01.08-2.0
changelog:
  - No longer abort read operations if archive/backup directories aren't there.
  - Add runtime directories and file to the package.


author: Alasdair Kergon <agk@redhat.com> - 2.02.11-1.0
changelog:
  - New upstream with numerous fixes and small enhancements.
    (See the WHATS_NEW documentation file for complete upstream changelog.)


author: Alasdair Kergon <agk@redhat.com> - 2.02.12-2
changelog:
  - Remove no-longer-used ldconfig from lvm2-cluster and fix lvmconf
    to cope without the shared library.


author: Alasdair Kergon <agk@redhat.com> - 2.02.16-1
changelog:
  - Fix VG clustered read locks to use PR not CR.
  - Adjust some alignments for ia64/sparc.
  - Fix mirror segment removal to use temporary error segment.
  - Always compile debug logging into clvmd.
  - Add startup timeout to clvmd startup script.
  - Add -T (startup timeout) switch to clvmd.
  - Improve lvm_dump.sh robustness.


author: Alasdair Kergon <agk@redhat.com> - 2.02.17-1
changelog:
  - Add missing pvremove error message when device doesn't exist.
  - When lvconvert allocates a mirror log, respect parallel area constraints.
  - Check for failure to allocate just the mirror log.
  - Support mirror log allocation when there is only one PV: area_count now 0.
  - Fix detection of smallest area in _alloc_parallel_area() for cling policy.
  - Add manpage entry for clvmd -T
  - Fix hang in clvmd if a pre-command failed.


author: Alasdair Kergon <agk@redhat.com> - 2.02.18-1
changelog:
  - Use CFLAGS when linking so mixed sparc builds can supply -m64.
  - Prevent permission changes on active mirrors.
  - Print warning instead of error message if lvconvert cannot zero volume.
  - Add snapshot options to lvconvert man page.
  - dumpconfig accepts a list of configuration variables to display.
  - Change dumpconfig to use --file to redirect output to a file.
  - Avoid vgreduce error when mirror code removes the log LV.
  - Fix ambiguous vgsplit error message for split LV.
  - Fix lvextend man page typo.
  - Use no flush suspending for mirrors.
  - Fix create mirror with name longer than 22 chars.


author: Alasdair Kergon <agk@redhat.com> - 2.02.19-1
changelog:
  - Fix a segfault if an empty config file section encountered.
  - Fix partition table processing after sparc changes.
  - Fix cmdline PE range processing segfault.
  - Move basic reporting functions into libdevmapper.


author: Alasdair Kergon <agk@redhat.com> - 2.02.20-1
changelog:
  - Fix exit statuses of reporting tools.
  - Add some missing close() and fclose() return code checks.
  - Add devices/ignore_suspended_devices to ignore suspended dm devices.
  - Fix refresh_toolcontext() always to wipe persistent device filter cache.
  - Long-lived processes write out persistent dev cache in refresh_toolcontext().
  - Streamline dm_report_field_* interface.
  - Update reporting man pages.
  - Add --clustered to man pages.
  - Add field definitions to report help text.


author: Alasdair Kergon <agk@redhat.com> - 2.02.21-1
changelog:
  - Fix vgsplit to handle mirrors.
  - Reorder fields in reporting field definitions.
  - Fix vgs to treat args as VGs even when PV fields are displayed.
  - Fix md signature check to handle both endiannesses.


author: Alasdair Kergon <agk@redhat.com> - 2.02.22-1
changelog:
  - Add ncurses-static BuildRequires after package split.
  - Fix loading of segment_libraries.
  - If a PV reappears after it was removed from its VG, make it an orphan.
  - Don't update metadata automatically if VGIDs don't match.
  - Fix some vgreduce --removemissing command line validation.
  - Trivial man page corrections (-b and -P).
  - Add global/units to example.conf.
  - Remove readline support from lvm.static.


author: Alasdair Kergon <agk@redhat.com> - 2.02.23-1
changelog:
  - Fix vgrename active LV check to ignore differing vgids.
  - Fix two more segfaults if an empty config file section encountered.
  - Fix a leak in a reporting error path.
  - Add devices/cache_dir & devices/cache_file_prefix, deprecating devices/cache.


author: Alasdair Kergon <agk@redhat.com> - 2.02.24-1
changelog:
  - Add BuildRequires readline-static until makefiles get fixed.
  - Fix processing of exit status in init scripts
  - Fix vgremove to require at least one vg argument.
  - Fix reading of striped LVs in LVM1 format.
  - Flag nolocking as clustered so clvmd startup sees clustered LVs.
  - Add a few missing pieces of vgname command line validation.
  - Support the /dev/mapper prefix on most command lines.


author: Alasdair Kergon <agk@redhat.com> - 2.02.27-1
changelog:
  - Add -f to vgcfgrestore to list metadata backup files.
  - Add pvdisplay --maps implementation.
  - Add devices/preferred_names config regex list for displayed device names.
  - Add vg_mda_count and pv_mda_count columns to reports.
  - Change cling alloc policy attribute character from 'C' to l'.
  - Print warnings to stderr instead of stdout.
  - Fix snapshot cow area deactivation if origin is not active.
  - Reinitialise internal lvmdiskscan variables when called repeatedly.
  - Allow keyboard interrupt during user prompts when appropriate.
  - Fix deactivation code to follow dependencies and remove symlinks.
  - Fix a segfault in device_is_usable() if a device has no table.
  - Fix creation and conversion of mirrors with tags.
  - Add command stub for pvck.
  - Handle vgsplit of an entire VG as a vgrename.
  - Fix vgsplit for lvm1 format (set and validate VG name in PVs metadata).
  - Split metadata areas in vgsplit properly.
  - Fix and clarify vgsplit error messages.
  - Update lists of attribute characters in man pages.
  - Remove unsupported LVM1 options from vgcfgrestore man page.
  - Update vgcfgrestore man page to show mandatory VG name.
  - Update vgrename man page to include UUID and be consistent with lvrename.
  - Add some more debug messages to clvmd startup.
  - Fix thread race in clvmd.
  - Make clvmd cope with quorum devices.
  - Add extra internal error checking to clvmd.
  - Fix missing lvm_shell symbol in lvm2cmd library.
  - Move regex functions into libdevmapper.
  - Add kernel and device-mapper targets versions to lvmdump.
  - Add /sys/block listings to lvmdump.
  - Make lvmdump list /dev recursively.
  - Mark /etc/lvm subdirectories as directories in spec file.


author: Alasdair Kergon <agk@redhat.com> - 2.02.28-1
changelog:
  - vgscan and pvscan now trigger clvmd -R, which should now work.
  - Fix clvmd logging so you can get lvm-level debugging out of it.
  - Allow clvmd debug to be turned on in a running daemon using clvmd -d [-C].
  - Add more cluster info to lvmdump.
  - Fix lvdisplay man page to say LV size is reported in sectors, not KB.
  - Fix loading of persistent cache if cache_dir is used.
  - Only permit --force, --verbose and --debug arguments to be repeated.
  - Add support for renaming mirrored LVs.
  - Add --mirrorlog argument to specify log type for mirrors.
  - Don't leak a file descriptor if flock or fcntl fails.
  - Detect stream write failure reliably.
  - Reduce severity of lstat error messages to very_verbose.
  - Update to use autoconf 2.61, while still supporting 2.57.


author: Alasdair Kergon <agk@redhat.com> - 2.02.29-1
changelog:
  - Make clvmd backup vg metadata on remote nodes.
  - Decode cluster locking state in log message.
  - Change file locking state messages from debug to very verbose.
  - Fix --addtag to drop @ prefix from name.
  - Stop clvmd going haywire if a pre_function fails.
  - Avoid nested vg_reads when processing PVs in VGs and fix associated locking.
  - Attempt to remove incomplete LVs with lvcreate zeroing/activation problems.
  - Add full read_ahead support.
  - Add lv_read_ahead and lv_kernel_read_ahead fields to reports and lvdisplay.
  - Prevent lvconvert -s from using same LV as origin and snapshot.
  - Fix human-readable output of odd numbers of sectors.
  - Add pv_mda_free and vg_mda_free fields to reports for raw text format.
  - Add LVM2 version to 'Generated by' comment in metadata.
  - Show 'not usable' space when PV is too large for device in pvdisplay.
  - Ignore and fix up any excessive device size found in metadata.
  - Fix error message when fixing up PV size in lvm2 metadata (2.02.11).
  - Fix orphan-related locking in pvdisplay and pvs.
  - Fix missing VG unlocks in some pvchange error paths.
  - Add some missing validation of VG names.
  - Detect md superblocks version 1.0, 1.1 and 1.2.
  - Add some pv-related error paths.
  - Handle future sysfs subsystem/block/devices directory structure.
  - Fix a bug in lvm_dump.sh checks for lvm/dmsetup binaries.
  - Fix underquotations in lvm_dump.sh.
  - Print --help output to stdout, not stderr.
  - After a cmdline processing error, don't print help text but suggest --help.
  - Add %PVS extents option to lvresize, lvextend, and lvcreate.
  - Remove no-longer-correct restrictions on PV arg count with stripes/mirrors.
  - Fix strdup memory leak in str_list_dup().
  - Link with -lpthread when static SELinux libraries require that.
  - Detect command line PE values that exceed their 32-bit range.
  - Include strerror string in dev_open_flags' stat failure message.
  - Avoid error when --corelog is provided without --mirrorlog. (2.02.28)
  - Correct --mirrorlog argument name in man pages (not --log).
  - Clear MIRROR_NOTSYNCED LV flag when converting from mirror to linear.
  - Modify lvremove to prompt for removal if LV active on other cluster nodes.
  - Add '-f' to vgremove to force removal of VG even if LVs exist.


author: Alasdair Kergon <agk@redhat.com> - 2.02.30-6
changelog:
  - Remove static libraries and binaries and move most binaries out of /usr.
  - Fix a segfault if using pvs with --all argument.
  - Fix vgreduce PV list processing not to process every PV in the VG.
  - Reinstate VG extent size and stripe size defaults (halved).
  - Set default readahead to twice maximium stripe size.
  - Detect non-orphans without MDAs correctly.
  - Prevent pvcreate from overwriting MDA-less PVs belonging to active VGs.
  - Don't use block_on_error with mirror targets version 1.12 and above.
  - Change vgsplit -l (for unimplemented --list) into --maxlogicalvolumes.
  - Update vgsplit to accept vgcreate options when new VG is destination.
  - Update vgsplit to accept existing VG as destination.
  - Major restructuring of pvmove and lvconvert code, adding stacking support.
  - Add new convert_lv field to lvs output.
  - Permit LV segment fields with PV segment reports.
  - Extend lvconvert to use polldaemon and wait for completion of initial sync.
  - Add seg_start_pe and seg_pe_ranges to reports.
  - Add fsadm interface to filesystem resizing tools.
  - Update --uuid argument description in man pages.
  - Print warning when lvm tools are running as non-root.


author: Alasdair Kergon <agk@redhat.com> - 2.02.31-7
changelog:
  - Avoid readahead error message when using default setting of lvcreate -M1.
  - Fix lvcreate --nosync not to wait for non-happening sync.
  - Add very_verbose lvconvert messages.


author: Alasdair Kergon <agk@redhat.com> - 2.02.32-8
changelog:
  - Fix pvs, vgs, lvs error exit status on some error paths.
  - Fix new parameter validation in vgsplit and test mode.
  - Fix internal metadata corruption in lvchange --resync.


author: Alasdair Kergon <agk@redhat.com> - 2.02.33-9
changelog:
  - Improve internal label caching performance while locks are held.
  - Fix mirror log name construction during lvconvert.


author: Alasdair Kergon <agk@redhat.com> - 2.02.38-1
changelog:
  - libdevmapper: Make dm_hash_iter safe against deletion.
  - libdevmapper: Accept a NULL pointer to dm_free silently.
  - libdevmapper: Calculate string size within dm_pool_grow_object.
  - libdevmapper: Send reporting field help text to stderr not stdout.

  - dmsetup: Add tables_loaded, readonly and suspended columns to reports.
  - dmsetup: Add --nameprefixes for new report output format FIELD=VALUE.

  - Add --nameprefixes to reporting tools for field name prefix output format.
  - Fix return values for reporting commands when run with no PVs, LVs, or VGs.
  - Add omitted unlock_vg() call when sigint_caught() during vg processing.
  - Fix free_count when reading pool metadata.
  - Fix segfault when using pvcreate on a device containing pool metadata.
  - In script-processing mode, stop if any command fails.
  - Warn if command exits with non-zero status code without a prior log_error.
  - Correct config file line numbers in messages when parsing comments.
  - Add missing deactivation after activation failure in lvcreate -Zy.
  - When removing LV symlinks, skip any where the VG name is not determined.
  - Fix vgsplit internal counting of snapshot LVs.
  - Update vgsplit to only restrict split with active LVs involved in split.
  - Fix vgsplit to only move hidden 'snapshotN' LVs when necessary.
  - Update vgsplit man page to reflect lvnames on the cmdline.
  - Update vgsplit to take "-n LogicalVolumeName" on the cmdline.
  - Fix vgsplit error paths to release vg_to lock.
  - Avoid spurious duplicate VG messages referring to VGs that are gone.
  - Drop dev_name_confirmed error message to debug level.
  - Fix setpriority error message to signed int.
  - Add assertions to trap deprecated P_ and V_ lock usage.
  - Avoid using DLM locks with LCK_CACHE type P_ lock requests.
  - Don't touch /dev in vgrename if activation is disabled.
  - Exclude VG_GLOBAL from internal concurrent VG lock counter.
  - Fix vgmerge snapshot_count when source VG contains snapshots.
  - Fix internal LV counter when a snapshot is removed.
  - Fix metadata corruption writing lvm1-formatted metadata with snapshots.
  - Fix lvconvert -m0 allocatable space check.
  - Don't attempt remote metadata backups of non-clustered VGs.
  - Improve preferred_names lvm.conf example.
  - Fix vgdisplay 'Cur LV' field to match lvdisplay output.
  - Fix lv_count report field to exclude hidden LVs.
  - Fix some pvmove error status codes.
  - Indicate whether or not VG is clustered in vgcreate log message.
  - Mention default --clustered setting in vgcreate man page.
  - Fix vgreduce to use vg_split_mdas to check sufficient mdas remain.
  - Update lvmcache VG lock state for all locking types now.
  - Fix output if overriding command_names on cmdline.
  - Add check to vg_commit() ensuring VG lock held before writing new VG metadata.
  - Add validation of LV name to pvmove -n.
  - Add some basic internal VG lock validation.
  - Fix vgsplit internal counting of snapshot LVs.
  - Update vgsplit to only restrict split with active LVs involved in split.
  - Fix vgsplit to only move hidden 'snapshotN' LVs when necessary.
  - Update vgsplit man page to reflect lvnames on the cmdline.
  - Update vgsplit to take "-n LogicalVolumeName" on the cmdline.
  - Fix vgsplit error paths to release vg_to lock.
  - Fix vgsplit locking of new VG.
  - Avoid erroneous vgsplit error message for new VG.
  - Suppress duplicate message when lvresize fails because of invalid vgname.
  - Cache VG metadata internally while VG lock is held.
  - Fix redundant lvresize message if vg doesn't exist.
  - Make clvmd-cman use a hash rather than an array for node updown info.
  - Decode numbers in clvmd debugging output.
  - Fix uninitialised mutex in clvmd if all daemons are not running at startup.
  - Add config file overrides to clvmd when it reads the active LVs list.
  - Make clvmd refresh the context correctly when lvm.conf is updated.
  - Fix another allocation bug with clvmd and large node IDs.
  - Fix uninitialised variable in clvmd that could cause odd hangs.
  - Correct command name in lvmdiskscan man page.
  - clvmd no longer crashes if it sees nodeids over 50.
  - Fix potential deadlock in clvmd thread handling.
  - Update usage message for clvmd.
  - Fix clvmd man page not to print <br> and clarified debug options.
  - Escape double quotes and backslashes in external metadata and config data.
  - Correct a function name typo in _line_append error message.
  - Fix resetting of MIRROR_IMAGE and VISIBLE_LV after removal of LV.
  - Fix remove_layer_from_lv to empty the LV before removing it.
  - Add missing no-longer-used segs_using_this_lv test to check_lv_segments.
  - Fix lvconvert detection of mirror conversion in progress.
  - Avoid automatic lvconvert polldaemon invocation when -R specified.
  - Fix 'pvs -a' to detect VGs of PVs without metadata areas.
  - Divide up internal orphan volume group by format type.
  - Fix lvresize to support /dev/mapper prefix in the LV name.
  - Fix lvresize to pass new size to fsadm when extending device.
  - Fix unfilled parameter passed to fsadm from lvresize.
  - Update fsadm to call lvresize if the partition size differs (with option -l).
  - Fix fsadm to support VG/LV names.


author: Alasdair Kergon <agk@redhat.com> - 2.02.38-2
changelog:
  - dmsetup: Add --unquoted and --rows to 'info -c' command.
  - libdevmapper: Fix inverted no_flush debug message.


author: Alasdair Kergon <agk@redhat.com> - 2.02.39-3
changelog:
  - Fix up cache for PVs without mdas after consistent VG metadata is processed.
  - Update validation of safe mirror log type conversions in lvconvert.
  - Fix lvconvert to disallow snapshot and mirror combinations.
  - Fix reporting of LV fields alongside unallocated PV segments.
  - Add --unquoted and --rows to reporting tools.
  - Avoid undefined status code after _memlock commands in lvm shell.
  - Fix and improve readahead 'auto' calculation for stripe_size.
  - Fix lvchange output for -r auto setting if auto is already set.
  - Fix add_mirror_images not to dereference uninitialized log_lv upon failure.
  - Add --force to lvextend and lvresize.
  - Fix vgchange to not activate component mirror volumes directly.


author: Fabio M. Di Nitto <fdinitto@redhat.cm> - 2.02.39-5
changelog:
  - Add BuildRequires on cmanlib-devel. This is required after libcman split
    from cman and cman-devel into cmanlib and cmanlib-devel.
  - Make versioned BuildRequires on cman-devel and cmanlib-devel more strict
    to guarantee to get the right version.


author: Alasdair Kergon <agk@redhat.com> - 2.02.43-1
changelog:
  - Upstream merge of device-mapper and lvm2 source.
  - Correct prototype for --permission on lvchange and lvcreate man pages.
  - Exit with non-zero status from vgdisplay if couldn't show any requested VG.
  - libdevmapper.pc: Use simplified x.y.z version number.
  - Accept locking fallback_to_* options in the global section as documented.
  - Several fixes to lvconvert involving mirrors.
  - Avoid overwriting in-use on-disk text metadata when metadataarea fills up.
  - Generate man pages from templates and include version.
  - Fix misleading error message when there are no allocatable extents in VG.
  - Fix handling of PVs which reappeared with old metadata version.
  - Fix validation of --minor and --major in lvcreate to require -My always.
  - Allow lvremove to remove LVs from VGs with missing PVs.
  - In VG with PVs missing, by default allow activation of LVs that are complete.
  - Require --force with --removemissing in vgreduce to remove partial LVs.
  - No longer write out PARTIAL flag into metadata backups.
  - Treat new default activation/missing_stripe_filler "error" as an error target.
  - Add devices/md_chunk_alignment to lvm.conf.
  - Pass struct physical_volume to pe_align and adjust for md chunk size.
  - Avoid shuffling remaining mirror images when removing one, retaining primary.
  - Prevent resizing an LV while lvconvert is using it.
  - Avoid repeatedly wiping cache while VG_GLOBAL is held in vgscan & pvscan.
  - Fix pvresize to not allow resize if PV has two metadata areas.
  - Fix setting of volume limit count if converting to lvm1 format.
  - Fix vgconvert logical volume id metadata validation.
  - Fix lvmdump metadata gather option (-m) to work correctly.
  - Fix allocation bug in text metadata format write error path.
  - Fix vgcfgbackup to properly check filename if template is used.
  - vgremove tries to remove lv snapshot first.
  - Improve file descriptor leak detection to display likely culprit and filename.
  - Avoid looping forever in _pv_analyze_mda_raw used by pvck.
  - Change lvchange exit status to indicate if any part of the operation failed.
  - Fix pvchange and pvremove to handle PVs without mdas.
  - Fix pvchange -M1 -u to preserve existing extent locations when there's a VG.
  - Cease recognising snapshot-in-use percentages returned by early devt kernels.
  - Add backward-compatible flags field to on-disk format_text metadata.
  - libdevmapper: Only resume devices in dm_tree_preload_children if size changes.
  - libdevmapper: Extend deptree buffers so the largest possible device numbers fit.
  - libdevmapper: Underline longer report help text headings.


author: Alasdair Kergon <agk@redhat.com> - 2.02.44-1
changelog:
  - Add --nameprefixes, --unquoted, --rows to pvs, vgs, lvs man pages.
  - Fix lvresize size conversion for fsadm when block size is not 1K.
  - Fix pvs segfault when run with orphan PV and some VG fields.
  - Display a 'dev_size' of zero for missing devices in reports.
  - Add pv_mda_size to pvs and vg_mda_size to vgs.
  - Fix lvmdump /sys listing to include virtual devices directory.
  - Add "--refresh" functionality to vgchange and vgmknodes.
  - Avoid exceeding LV size when wiping device.
  - Calculate mirror log size instead of using 1 extent.
  - Ensure requested device number is available before activating with it.
  - Fix incorrect exit status from 'help <command>'.
  - Fix vgrename using UUID if there are VGs with identical names.
  - Fix segfault when invalid field given in reporting commands.
  - Use better random seed value in temp file creation.
  - Add read_urandom to read /dev/urandom. Use in uuid calculation.
  - Fix race in vgcreate that would result in second caller overwriting first.
  - Fix uninitialised lv_count in vgdisplay -c.
  - Don't skip updating pvid hash when lvmcache_info struct got swapped.
  - Fix startup race in clvmd.
  - Cope with snapshot dependencies when removing a whole VG with lvremove.
  - Make man pages and tool help text consistent using | for alternative options.
  - Add "all" field to reports expanding to all fields of report type.
  - Enforce device name length and character limitations in libdm.


author: Alasdair Kergon <agk@redhat.com> - 2.02.45-1
changelog:
  - Update clusterlib and corosync dependencies.
  - Attempt proper clean up in child before executing fsadm or modprobe.
  - Do not scan devices if reporting only attributes from PV label.
  - Use pkgconfig to obtain corosync library details during configuration.
  - Fix error returns in clvmd-corosync interface to DLM.
  - Add --refresh to vgchange and vgmknodes man pages.
  - Pass --test from lvresize to fsadm as --dry-run.
  - Prevent fsadm from checking mounted filesystems.
  - No longer treats any other key as 'no' when prompting in fsadm.
  - Add --dataalignment to pvcreate to specify alignment of data area.
  - Fix unblocking of interrupts after several commands.
  - Provide da and mda locations in debug message when writing text format label.
  - Mention the restriction on file descriptors at invocation on the lvm man page.
  - Index cached vgmetadata by vgid not vgname to cope with duplicate vgnames.
  - No longer require kernel and metadata major numbers to match.
  - If kernel supports only one dm major number, use in place of any supplied.
  - Add option to /etc/sysconfig/cluster to select cluster type for clvmd.
  - Allow clvmd to start up if its lockspace already exists.
  - Separate PV label attributes which do not need parse metadata when reporting.
  - Remove external dependency on the 'cut' command from fsadm.
  - Fix pvs segfault when pv mda attributes requested for unavailable PV.
  - Add fsadm support for reszing ext4 filesysystems.
  - Change lvm2-cluster to corosync instead of cman.
  - Fix some old changelog typos in email addresses.


author: Alasdair Kergon <agk@redhat.com> - 2.02.47-1
changelog:
  - Inherit readahead setting from underlying devices during activation.
  - Detect LVs active on remote nodes by querying locks if supported.
  - Enable online resizing of mirrors.
  - Use suspend with flush when device size was changed during table preload.
  - Implement query_resource_fn for cluster_locking.
  - Support query_resource_fn in locking modules.
  - Fix pvmove to revert operation if temporary mirror creation fails.
  - Fix metadata export for VG with missing PVs.
  - Add vgimportclone and install it and the man page by default.
  - Force max_lv restriction only for newly created LV.
  - Do not query nonexistent devices for readahead.
  - Reject missing PVs from allocation in toollib.
  - Fix PV datalignment for values starting prior to MDA area. (2.02.45)
  - Add sparse devices: lvcreate -s --virtualoriginsize (hidden zero origin).
  - Fix minimum width of devices column in reports.
  - Add lvs origin_size field.
  - Implement lvconvert --repair for repairing partially-failed mirrors.
  - Fix vgreduce --removemissing failure exit code.
  - Fix remote metadata backup for clvmd.
  - Fix metadata backup to run after vg_commit always.
  - Fix pvs report for orphan PVs when segment attributes are requested.
  - Fix pvs -a output to not read volume groups from non-PV devices.
  - Introduce memory pools per volume group (to reduce memory for large VGs).
  - Always return exit error status when locking of volume group fails.
  - Fix mirror log convert validation question.
  - Enable use of cached metadata for pvs and pvdisplay commands.
  - Fix memory leak in mirror allocation code.
  - Save and restore the previous logging level when log level is changed.
  - Fix error message when archive initialization fails.
  - Make sure clvmd-corosync releases the lockspace when it exits.
  - Fix segfault for vgcfgrestore on VG with missing PVs.
  - Block SIGTERM & SIGINT in clvmd subthreads.
  - Detect and conditionally wipe swapspace signatures in pvcreate.
  - Fix maximal volume count check for snapshots if max_lv set for volume group.
  - Fix lvcreate to remove unused cow volume if the snapshot creation fails.
  - Fix error messages when PV uuid or pe_start reading fails.
  - Flush memory pool and fix locking in clvmd refresh and backup command.
  - Fix unlocks in clvmd-corosync. (2.02.45)
  - Fix error message when adding metadata directory to internal list fails.
  - Fix size and error message of memory allocation at backup initialization.
  - Remove old metadata backup file after renaming VG.
  - Restore log_suppress state when metadata backup file is up-to-date.
  - Export dm_tree_node_size_changed() from libdevmapper.
  - Fix segfault when getopt processes dmsetup -U, -G and -M options.
  - Add _smp_mflags to compilation and remove DESTDIR.


author: Fabio M. Di Nitto <fdinitto@redhat.com> - 2.02.47-2
changelog:
  - BuildRequire newer version of corosynclib (0.97-1) to link against
    latest libraries version (soname 4.0.0).
  - Add lvm2-2_02_48-cluster-cpg-new-api.patch to port clvmd-corosync
    to new corosync cpg API.


author: Alasdair Kergon <agk@redhat.com> - 2.02.48-1
changelog:
  - Abort if automatic metadata correction fails when reading VG to update it.
  - Don't fallback to default major number in libdm: use dm_task_set_major_minor.
  - Explicitly request fallback to default major number in device mapper.
  - Ignore suspended devices during repair.
  - Suggest using lvchange --resync when adding leg to not-yet-synced mirror.
  - Destroy toolcontext on clvmd exit to avoid memory pool leaks.
  - Fix lvconvert not to poll mirror if no conversion in progress.
  - Fix memory leaks in toolcontext error path.
  - Reinstate partial activation support in clustered mode.
  - Allow metadata correction even when PVs are missing.
  - Use 'lvm lvresize' instead of 'lvresize' in fsadm.
  - Do not use '-n' realine option in fsadm for rescue disk compatiblity.
  - Round up requested readahead to at least one page and print warning.
  - Try to repair vg before actual vgremove when force flag provided.
  - Unify error messages when processing inconsistent volume group.
  - Introduce lvconvert --use_policies (repair policy according to lvm.conf).
  - Fix rename of active snapshot with virtual origin.
  - Fix convert polling to ignore LV with different UUID.
  - Cache underlying device readahead only before activation calls.
  - Fix segfault when calculating readahead on missing device in vgreduce.
  - Remove verbose 'visited' messages.
  - Handle multi-extent mirror log allocation when smallest PV has only 1 extent.
  - Add LSB standard headers and functions (incl. reload) to clvmd initscript.
  - When creating new LV, double-check that name is not already in use.
  - Remove /dev/vgname/lvname symlink automatically if LV is no longer visible.
  - Rename internal vorigin LV to match visible LV.
  - Suppress 'removed' messages displayed when internal LVs are removed.
  - Fix lvchange -a and -p for sparse LVs.
  - Fix lvcreate --virtualsize to activate the new device immediately.
  - Make --snapshot optional with lvcreate --virtualsize.
  - Generalise --virtualoriginsize to --virtualsize.
  - Skip virtual origins in process_each_lv_in_vg() without --all.
  - Fix counting of virtual origin LVs in vg_validate.
  - Attempt to load dm-zero module if zero target needed but not present.
  - Add crypt target handling to libdevmapper tree nodes.
  - Add splitname command to dmsetup.
  - Add subsystem, vg_name, lv_name, lv_layer fields to dmsetup reports.
  - Make mempool optional in dm_split_lvm_name() in libdevmapper.


author: Fabio M. Di Nitto <fdinitto@redhat.com> 2.02.48-2
changelog:
  - BuildRequires and Requires on stable versions of both corosync-lib (1.0.0-1)
    and cluster-lib (3.0.0-20).


author: Alasdair Kergon <agk@redhat.com> - 2.02.49-1
changelog:
  - Exclude VG_GLOBAL from vg_write_lock_held so scans open devs read-only again.
  - Fix dev name mismatch in vgcreate man page example.
  - Check md devices for a partition table during device scan.
  - Add extended device (blkext) and md partition (mdp) types to filters.
  - Make text metadata read errors for segment areas more precise.
  - Fix text segment metadata read errors to mention correct segment name.
  - Include segment and LV names in text segment import error messages.
  - Fix memory leak in vgsplit when re-reading the vg.
  - Permit several segment types to be registered by a single shared object.
  - Update the man pages to document size units uniformly.
  - Allow commandline sizes to be specified in terms of bytes and sectors.
  - Update 'md_chunk_alignment' to use stripe-width to align PV data area.
  - Fix segfault in vg_release when vg->cmd is NULL.
  - Add dm_log_with_errno and dm_log_with_errno_init, deprecating the old fns.
  - Fix whitespace in linear target line to fix identical table line detection.
  - Add device number to more log messages during activation.


author: Alasdair Kergon <agk@redhat.com> - 2.02.50-1
changelog:
  - Add libs and devel subpackages to include shared libraries for applications.
    N.B. The liblvm2app API is not frozen yet and may still be changed
    Send any feedback to the mailing list lvm-devel@redhat.com.
  - Remove obsolete --with-dmdir from configure.
  - Add global/wait_for_locks to lvm.conf so blocking for locks can be disabled.
  - Fix race condition with vgcreate and vgextend on same device since 2.02.49.
  - Add an API version number, LVM_LIBAPI, to the VERSION string.
  - Return EINVALID_CMD_LINE not success when invalid VG name format is used.
  - Remove unnecessary messages after vgcreate/vgsplit code change in 2.02.49.
  - Store any errno and error messages issued while processing each command.


author: Alasdair Kergon <agk@redhat.com> - 2.02.51-2
changelog:
  - Fix clvmd locking broken in 2.02.50-1.
  - Only change LV /dev symlinks on ACTIVATE not PRELOAD (so not done twice).
  - Make lvconvert honour log mirror options combined with downconversion.
  - Add devices/data_alignment_detection to lvm.conf.
  - Add devices/data_alignment_offset_detection to lvm.conf.
  - Add --dataalignmentoffset to pvcreate to shift start of aligned data area.
  - Update synopsis in lvconvert manpage to mention --repair.
  - Document -I option of clvmd in the man page.


author: Milan Broz <mbroz@redhat.com> - 2.02.51-3
changelog:
  - Fix global locking in PV reporting commands (2.02.49).
  - Fix pvcreate on a partition (2.02.51).
  - Build clvmd with both cman and corosync support.


author: Alasdair Kergon <agk@redhat.com> - 2.02.52-1
changelog:
  - Prioritise write locks over read locks by default for file locking.
  - Add local lock files with suffix ':aux' to serialise locking requests.
  - Fix readonly locking to permit writeable global locks (for vgscan). (2.02.49)
  - Make readonly locking available as locking type 4.
  - Fix global locking in PV reporting commands (2.02.49).
  - Make lvchange --refresh only take a read lock on volume group.
  - Fix race where non-blocking file locks could be granted in error.
  - Fix pvcreate string termination in duplicate uuid warning message.
  - Don't loop reading sysfs with pvcreate on a non-blkext partition (2.02.51).
  - Fix vgcfgrestore error paths when locking fails (2.02.49).
  - Make clvmd check corosync to see what cluster interface it should use.
  - Fix vgextend error path - if ORPHAN lock fails, unlock / release vg (2.02.49).
  - Clarify use of PE ranges in lv{convert|create|extend|resize} man pages.
  - Restore umask when device node creation fails.
  - Check kernel vsn to use 'block_on_error' or 'handle_errors' in mirror table.


author: Alasdair Kergon <agk@redhat.com> - 2.02.52-2
changelog:
  - Build dmeventd and place into a separate set of subpackages.
  - Remove no-longer-needed BuildRoot tag and buildroot emptying at install.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.52-3
changelog:
  - Enable udev synchronisation code.
  - Install default udev rules for device-mapper and LVM2.
  - Add BuildRequires: libudev-devel.
  - Add Requires: libudev (to check udev is running).
  - Add Requires: util-linux-ng (blkid used in udev rules).


author: Alasdair Kergon <agk@redhat.com> - 2.02.53-1
changelog:
  - Create any directories in /dev with umask 022. (#507397)
  - Handle paths supplied to dm_task_set_name by getting name from /dev/mapper.
  - Add splitname and --yes to dmsetup man page.


author: Alasdair Kergon <agk@redhat.com> - 2.02.54-1
changelog:
  - Add implict pvcreate support to vgcreate and vgextend.
  - Add --pvmetadatacopies for pvcreate, vgcreate, vgextend, vgconvert.
  - Distinguish between powers of 1000 and powers of 1024 in unit suffixes.
  - Restart lvconverts in vgchange.
  - Don't attempt to deactivate an LV if any of its snapshots are in use.
  - Return error if lv_deactivate fails to remove device from kernel.
  - Treat input units of both 's' and 'S' as 512-byte sectors.  (2.02.49)
  - Use standard output units for 'PE Size' and 'Stripe size' in pv/lvdisplay.
  - Add global/si_unit_consistency to enable cleaned-up use of units in output.
  - Only do lock conversions in clvmd if we are explicitly asked for one.
  - Fix clvmd segfault when refresh_toolcontext fails.
  - Cleanup mimagetmp LV if allocation fails for new lvconvert mimage.
  - Handle metadata with unknown segment types more gracefully.
  - Make clvmd return 0 on success rather than 1.
  - Correct example.conf to indicate that lvm2 not lvm1 is the default format.
  - Delay announcing mirror monitoring to syslog until initialisation succeeded.
  - Update lvcreate/lvconvert man pages to explain PhysicalVolume parameter.
  - Document --all option in man pages and cleanup {pv|vg|lv}{s|display} pages.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.54-2
changelog:
  - Enable udev synchronisation code.
  - Install default udev rules for device-mapper and LVM2.
  - Add BuildRequires: libudev-devel.
  - Add Requires: libudev (to check udev is running).
  - Add Requires: util-linux-ng (blkid used in udev rules).
  - Add Conflicts: dracut < 002-18 (for dracut to install required udev rules)


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.54-3
changelog:
  - Support udev flags even when udev_sync is disabled.
  - Remove last_rule from udev_rules.
  - Udev rules cleanup.


author: Alasdair Kergon <agk@redhat.com> - 2.02.55-1
changelog:
  - Fix deadlock when changing mirrors due to unpaired memlock refcount changes.
  - Fix pvmove region_size overflow for very large PVs.
  - Fix lvcreate and lvresize %PVS argument always to use sensible total size.
  - Directly restrict vgchange to activating visible LVs.
  - Fix hash lookup segfault when keys compared are different lengths.
  - Flush stdout after yes/no prompt.
  - Recognise DRBD devices and handle them like md devices.
  - Add dmsetup --inactive support (requires kernel support targetted for 2.6.33).


author: Alasdair Kergon <agk@redhat.com> - 2.02.56-2
changelog:
  - Revert vg_read_internal change as clvmd was not ready for vg_read. (2.02.55)
  - Fix unbalanced memory locking when deactivating LVs.
  - Add missing vg_release to pvs and pvdisplay to fix memory leak.
  - Do not try to unlock VG which is not locked when processing a VG.
  - Update .cache file after every full device rescan in clvmd.
  - Refresh all device filters (including sysfs) before each full device rescan.
  - Return error status if vgchange fails to activate any volume.


author: Alasdair Kergon <agk@redhat.com> - 2.02.57-1
changelog:
  - Add --splitmirrors to lvconvert to split off part of a mirror.
  - Allow vgremove to remove a VG with PVs missing after a prompt.
  - Add activation/udev_rules config option in lvm.conf.
  - Add --poll flag to vgchange and lvchange to control background daemon launch.
  - Impose limit of 8 mirror images to match the in-kernel kcopyd restriction.
  - Log failure type and recognise type 'F' (flush) in dmeventd mirror plugin.
  - Add --noudevrules option for dmsetup to disable /dev node management by udev.
  - Fix 'dmsetup info -c -o all' to show all fields.
  - Fix coredump and memory leak for 'dmsetup help -c'.
  - Rename mirror_device_fault_policy to mirror_image_fault policy.
  - Use extended status of new kernel snapshot target 1.8.0 to detect when empty.
  - Allow use of precommitted metadata when a PV is missing.
  - Add global/abort_on_internal_errors to lvm.conf to assist testing.
  - If aborting due to internal error, always send that message to stderr.
  - Keep log type consistent when changing mirror image count.
  - Exit with success in lvconvert --repair --use-policies on failed allocation.
  - Ensure any background daemon exits without duplicating parent's functionality.
  - Change background daemon process names to "(lvm2)".
  - Fix internal lock state after forking.
  - Remove empty PV devices if lvconvert --repair is using defined policies.
  - Use fixed buffer to prevent stack overflow in persistent filter dump.
  - Propagate metadata commit and revert notifications to other cluster nodes.
  - Fix metadata caching and lock state propagation to remote nodes in clvmd.
  - Properly decode all flags in clvmd messages including VG locks.
  - Drop cached metadata after device was auto-repaired and removed from VG.
  - Clear MISSING_PV flag if PV reappeared and is empty.
  - Fix removal of multiple devices from a mirror.
  - Also clean up PVs flagged as missing in vgreduce --removemissing --force.
  - Fix some pvresize and toollib error paths with missing VG releases/unlocks.
  - Explicitly call suspend for temporary mirror layer.
  - Add memlock information to do_lock_lv debug output.
  - Always bypass calls to remote cluster nodes for non-clustered VGs.
  - Permit implicit cluster lock conversion in pre/post callbacks on local node.
  - Permit implicit cluster lock conversion to the lock mode already held.
  - Fix lock flag masking in clvmd so intended code paths get invoked.
  - Remove newly-created mirror log from metadata if initial deactivation fails.
  - Improve pvmove error message when all source LVs are skipped.
  - Fix memlock imbalance in lv_suspend if already suspended.
  - Fix pvmove test mode not to poll (and fail).
  - Fix vgcreate error message if VG already exists.
  - Fix tools to use log_error when aborted due to user response to prompt.
  - Fix ignored readahead setting in lvcreate --readahead.
  - Fix clvmd memory leak in lv_info_by_lvid by calling release_vg.
  - If LVM_UDEV_DISABLE_CHECKING is set in environment, disable udev warnings.
  - If DM_UDEV_DISABLE_CHECKING is set in environment, disable udev warnings.
  - Always set environment variables for an LVM2 device in 11-dm-lvm.rules.
  - Disable udev rules for change events with DISK_RO set.
  - Add dm_tree_add_dev_with_udev_flags to provide wider support for udev flags.
  - Correct activated or deactivated text in vgchange summary message.
  - Fix fsadm man page typo (fsdam).


author: Alasdair Kergon <agk@redhat.com> - 2.02.58-1
changelog:
  - Fix clvmd automatic target module loading crash.
  - Fix allocation code not to stop at the first area of a PV that fits.
  - Add support for the "snapshot-merge" kernel target (2.6.33-rc1).
  - Add --merge to lvconvert to merge a snapshot into its origin.


author: Alasdair Kergon <agk@redhat.com> - 2.02.59-1
changelog:
  - Add cmirror subpackage for clustered mirrors.
  - Set 'preferred_names' in default lvm.conf.
  - Add libdevmapper-event-lvm2.so to serialise dmeventd plugin liblvm2cmd use.
  - Stop dmeventd trying to access already-removed snapshots.
  - Fix clvmd to never scan suspended devices.
  - Fix detection of completed snapshot merge.
  - Improve snapshot merge metadata import validation.


author: Fabio M. Di Nitto <fdinitto@redhat.com> - 2.02.59-2
changelog:
  - Drop duplicated BuildRequires on openaislib-devel.
  - Drop Requires on clusterlib for cmirror subpackage.
  - clvmd subpackage should Requires cman (#506592).


author: Alasdair Kergon <agk@redhat.com> - 2.02.59-3
changelog:
  - Fix dmeventd lvm2 wrapper (plug-ins unusable in last build).
  - Make failed locking initialisation messages more descriptive.


author: Alasdair Kergon <agk@redhat.com> - 2.02.60-4
changelog:
  - Extend cmirrord man page.
  - Sleep before first progress check iff pvmove/lvconvert interval has prefix '+'.
  - Fix cmirror initscript syntax problems.
  - Fix first syslog message prefix for dmeventd plugins.
  - Make failed locking initialisation messages more descriptive.


author: Alasdair Kergon <agk@redhat.com> - 2.02.61-1
changelog:
  - Add %ORIGIN support to lv{create,extend,reduce,resize} --extents.
  - Accept a list of LVs with 'lvconvert --merge @tag' using process_each_lv.
  - Remove false "failed to find tree node" error when activating merging origin.
  - Exit with success when lvconvert --repair --use-policies performs no action.
  - Avoid unnecessary second resync when adding mimage to core-logged mirror.
  - Make clvmd -V return status zero.
  - Fix cmirrord segfault in clog_cpg list processing when converting mirror log.
  - Deactivate temporary pvmove mirror cluster-wide when activating it fails.
  - Add missing metadata vg_reverts in pvmove error paths.
  - Unlock shared lock in clvmd if activation calls fail.
  - Add lvm_pv_get_size, lvm_pv_get_free and lvm_pv_get_dev_size to lvm2app.
  - Change lvm2app to return all sizes in bytes as documented (not sectors).
  - Exclude internal VG names and uuids from lists returned through lvm2app.
  - Add LVM_SUPPRESS_LOCKING_FAILURE_MESSAGES environment variable.
  - Add DM_UDEV_DISABLE_LIBRARY_FALLBACK udev flag to rely on udev only.
  - Remove hard-coding that skipped _mimage devices from 11-dm-lvm.rules.
  - Export dm_udev_create_cookie function to create new cookies on demand.
  - Add --udevcookie, udevcreatecookie and udevreleasecookie to dmsetup.
  - Set udev state automatically instead of using DM_UDEV_DISABLE_CHECKING.
  - Set udev state automatically instead of using LVM_UDEV_DISABLE_CHECKING.
  - Remove pointless versioned symlinks to dmeventd plugin libraries.


author: Alasdair Kergon <agk@redhat.com> - 2.02.62-1
changelog:
  - Rewrite clvmd init script.
  - Add default alternative to mlockall using mlock to reduce pinned memory size.
  - Add use_mlockall and mlock_filter to activation section of lvm.conf.
  - Handle misaligned devices that report alignment_offset of -1.
  - Extend core allocation code in preparation for mirrored log areas.
  - No longer fall back to looking up active devices by name if uuid not found.
  - Don't touch /dev in vgmknodes if activation is disabled.
  - Add --showkeys parameter description to dmsetup man page.
  - Add --help option as synonym for help command.
  - Add lvm2app functions lvm_{vg|lv}_{get|add|remove}_tag() functions.
  - Refactor snapshot-merge deptree and device removal to support info-by-uuid.


author: Alasdair Kergon <agk@redhat.com> - 2.02.63-1
changelog:
  - Move development links to shared objects to /usr (hard-coded temporarily).
  - Change libdevmapper deactivation to fail if device is open.
  - Wipe memory buffers for libdevmapper dm-ioctl parameters before releasing.
  - Strictly require libudev if udev_sync is used.
  - Add support for ioctl's DM_UEVENT_GENERATED_FLAG.
  - Allow incomplete mirror restore in lvconvert --repair upon insufficient space.
  - Do not reset position in metadata ring buffer on vgrename and vgcfgrestore.
  - Allow VGs with active LVs to be renamed.
  - Only pass visible LVs to tools in cmdline VG name/tag expansions without -a.
  - Use C locale and mlockall in clvmd and dmeventd.
  - Mask LCK_HOLD in cluster VG locks for upgrade compatibility with older clvmd.
  - Add activation/polling_interval to lvm.conf as --interval default.
  - Don't ignore error if resuming any LV fails when resuming groups of LVs.
  - Skip closing persistent filter cache file if open failed.
  - Permit mimage LVs to be striped in lvcreate, lvresize and lvconvert.
  - Fix pvmove allocation to take existing parallel stripes into account.
  - Fix incorrect removal of symlinks after LV deactivation fails.
  - Fix is_partitioned_dev not to attempt to reopen device.
  - Fix another thread race in clvmd.
  - Improve vg_validate to detect some loops in lists.
  - Change most remaining log_error WARNING messages to log_warn.
  - Always use blocking lock for VGs and orphan locks.
  - Allocate all memory for segments from private VG mempool.
  - Optimise searching PV segments for seeking the most recently-added.
  - Remove duplicated vg_validate checks when parsing cached metadata.
  - Use hash table of LVs to speed up parsing of text metadata with many LVs.
  - Fix two vg_validate messages, adding whitespace and parentheses.
  - When dmeventd is not forking because of -d flag, don't kill parent process.
  - Fix dso resource leak in error path of dmeventd.
  - Fix --alloc contiguous policy only to allocate one set of parallel areas.
  - Do not allow {vg|lv}change --ignoremonitoring if on clustered VG.
  - Add ability to create mirrored logs for mirror LVs.
  - Fix clvmd cluster propagation of dmeventd monitoring mode.
  - Allow ALLOC_ANYWHERE to split contiguous areas.
  - Add some assertions to allocation code.
  - Introduce pv_area_used into allocation algorithm and add debug messages.
  - Add activation/monitoring to lvm.conf.
  - Add --monitor and --ignoremonitoring to lvcreate.
  - Don't allow resizing of internal logical volumes.
  - Fix libdevmapper-event pkgconfig version string to match libdevmapper.
  - Avoid scanning all pvs in the system if operating on a device with mdas.
  - Disable long living process flag in lvm2app library.
  - Fix pvcreate device md filter check.
  - Suppress repeated errors about the same missing PV uuids.
  - Bypass full device scans when using internally-cached VG metadata.
  - Only do one full device scan during each read of text format metadata.
  - Look up missing PVs by uuid not dev_name in pvs to avoid invalid stat.


author: Alasdair Kergon <agk@redhat.com> - 2.02.63-2
changelog:
  - Remove 'lvmconf --lockinglibdir' from cluster post: locking is now built-in.
  - Move libdevmapper-event-lvm2.so to devel package.
  - Explicitly specify libdevmapper-event.so* attributes.
  - Drop support for upgrades from very old versions that used lvm not lvm2.
  - Move libdevmapper-event plug-in libraries into new device-mapper subdirectory.
  - Don't verify lvm.conf contents when using rpm --verify.


author: Alasdair Kergon <agk@redhat.com> - 2.02.64-1
changelog:
  - Avoid pointless initialisation when the 'version' command is run directly.
  - Fix memory leak for invalid regex pattern input.
  - Display invalid regex pattern for filter configuration in case of error.
  - Fix -M and --type to use strings, not pointers that change on config refresh.
  - Fix lvconvert error message when existing mirrored LV is not found.
  - Set appropriate udev flags for reserved LVs.
  - Disallow the direct removal of a merging snapshot.
  - Don't preload the origin when removing a snapshot whose merge is pending.
  - Disallow the addition of mirror images while a conversion is happening.
  - Disallow primary mirror image removal when mirror is not in-sync.
  - Remove obsolete --name parameter from vgcfgrestore.
  - Add -S command to clvmd to restart the daemon preserving exclusive locks.
  - Increment lvm2app version from 1 to 2 (memory allocation changes).
  - Change lvm2app memory alloc/free for pv/vg/lv properties.
  - Change daemon lock filename from lvm2_monitor to lvm2-monitor for consistency.
  - Add support for new IMPORT{db} udev rule.
  - Add DM_UDEV_PRIMARY_SOURCE_FLAG udev flag to recognize proper DM events.
  - Also include udev libs in libdevmapper.pc.
  - Cache bitset locations to speed up _calc_states.
  - Add a regex optimisation pass for shared prefixes and suffixes.
  - Add dm_bit_and and dm_bitset_equal to libdevmapper.
  - Speed up dm_bit_get_next with ffs().


author: Alasdair Kergon <agk@redhat.com> - 2.02.65-1
changelog:
  - Disallow vgchange --clustered if there are active mirrors or snapshots.
  - Fix truncated total size displayed by pvscan.
  - Skip internal lvm devices in scan if ignore_suspended_devices is set.
  - Do not merge old device cache after we run full scan. (2.02.56)
  - Add new --sysinit compound option to vgchange and lvchange.
  - Fix clvmd init script never to deactivate non-clustered volume groups.
  - Drop duplicate errors for read failures and missing devices to verbose level.
  - Do not print encryption key in message debug output (cryptsetup luksResume).
  - Use -d to control level of messages sent to syslog by dmeventd.
  - Change -d to -f to run dmeventd in foreground.
  - Fix udev flags on remove in create_and_load error path.
  - Add dm_list_splice() function to join two lists together.
  - Use /bin/bash for scripts with bashisms.
  - Switch Libs.private to Requires.private in devmapper.pc and lvm2app.pc.
  - Use pkgconfig Requires.private for devmapper-event.pc.


author: Alasdair Kergon <agk@redhat.com> - 2.02.66-2
changelog:
  - Simplify and fix Requires package headers.
  - If unable to obtain snapshot percentage leave value blank on reports.
  - Use new install_system_dirs and install_initscripts makefile targets.
  - Add lvm2app functions to lookup a vgname from a pvid and pvname.
  - Change internal processing of PVs in pvchange.
  - Validate internal lock ordering of orphan and VG_GLOBAL locks.


author: Alasdair Kergon <agk@redhat.com> - 2.02.67-1
changelog:
  - Require partial option in lvchange --refresh for partial LVs.
  - Don't merge unchanged persistent cache file before dumping if tool scanned.
  - Avoid selecting names under /dev/block if there is an alternative.
  - Fix semctl parameter (union) to avoid misaligned parameter on some arches.
  - Fix clvmd initscript restart command to start clvmd if not yet running.
  - Handle failed restart of clvmd using -S switch properly.
  - Use built-in absolute paths in clvmd (clvmd restart and PV and LV queries).
  - Consistently return ECMD_FAILED if interrupted processing multiple LVs.
  - Add --type parameter description to the lvcreate man page.
  - Document 'clear' in dmsetup man page.
  - Replace strncmp kernel version number checks with proper ones.
  - Update clustered log kernel module name to log-userspace for 2.6.31 onwards.
  - Support autoloading of dm-mod module for kernels from 2.6.35.
  - Add dm_tree_node_set_presuspend_node() to presuspend child when deactivating.
  - Do not fail lvm_init() if init_logging() or _init_rand() generates an errno.
  - Fix incorrect memory pool deallocation while using vg_read for files.


author: Alasdair Kergon <agk@redhat.com> - 2.02.68-1
changelog:
  - Have device-mapper-libs require device-mapper (circular) for udev rules.
  - Clear exec_prefix.
  - Use early udev synchronisation and update of dev nodes for clustered mirrors.
  - Add lv_path to reports to offer full /dev pathname.
  - Avoid abort when generating cmirror status.
  - Fix clvmd initscript status to print only active clustered LVs.
  - Fix segfault in clvmd -R if no response from daemon received.
  - Honour log argument when down-converting stacked mirror.
  - Sleep to workaround clvmd -S race: socket closed early and server drops cmd.
  - Exit successfully when using -o help (but not -o +help) with LVM reports.
  - Add man pages for lvmconf, dmeventd and non-existent lvmsadc and lvmsar tools.
  - Add --force, --nofsck and --resizefs to lvresize/extend/reduce man pages.
  - Fix lvm2cmd example in documentation.
  - Fix typo in warning message about missing device with allocated data areas.
  - Add device name and offset to raw_read_mda_header error messages.
  - Allow use of lvm2app and lvm2cmd headers in C++ code.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.68-2
changelog:
  - Fix udev rules to handle spurious events properly.
  - Add Requires: udev >= 158-1 (needed for the change in udev rules).


author: Alasdair Kergon <agk@redhat.com> - 2.02.69-1
changelog:
  - Fix vgremove to allow removal of VG with missing PVs. (2.02.52)
  - Add metadata/vgmetadatacopies to lvm.conf.
  - Add --metadataignore to pvcreate and vgextend.
  - Add vg_mda_copies, pv_mda_used_count and vg_mda_used_count to reports.
  - Describe --vgmetadatacopies in lvm.conf and other man pages.
  - Add --[vg]metadatacopies to select number of mdas to use in a VG.
  - Make the metadata ignore bit control read/write metadata areas in a PV.
  - Add pvchange --metadataignore to set or clear a metadata ignore bit.
  - Refactor metadata code to prepare for --metadataignore / --vgmetadatacopies.
  - Ensure region_size of mirrored log does not exceed its full size.
  - Preload libc locale messages to prevent reading it in memory locked state.
  - Fix handling of simultaneous mirror image and mirrored log image failure.


author: Alasdair Kergon <agk@redhat.com> - 2.02.70-1
changelog:
  - Remove log directly if all mirror images of a mirrored log fail.
  - Randomly select which mdas to use or ignore.
  - Add printf format attributes to yes_no_prompt and fix a caller.
  - Always pass unsuspended dm devices through persistent filter to other filters.
  - Move test for suspended dm devices ahead of other filters.
  - Fix another segfault in clvmd -R if no response from daemon received. (2.02.68)
  - Remove superfluous suspended device counter from clvmd.
  - Fix lvm shell crash when input is entirely whitespace.
  - Update partial mode warning message.
  - Preserve memlock balance in clvmd when activation triggers a resume.
  - Restore the removemissing behaviour of lvconvert --repair --use-policies.


author: Alasdair Kergon <agk@redhat.com> - 2.02.71-1
changelog:
  - Make vgck warn about missing PVs.
  - Revert failed table load preparation after "create, load and resume".
  - Check if cluster log daemon is running before allowing cmirror create.
  - Add dm_create_lockfile to libdm and use for pidfiles for all daemons.
  - Correct LV list order used by lvconvert when splitting a mirror.
  - Check if LV with specified name already exists when splitting a mirror.
  - Fix suspend/resume logic for LVs resulting from splitting a mirror.
  - Fix possible hang when all mirror images of a mirrored log fail.
  - Adjust auto-metadata repair and caching logic to try to cope with empty mdas.
  - Update pvcreate, {pv|vg}change, and lvm.conf man pages about metadataignore.
  - Prompt if metadataignore with vgextend or pvchange would adjust vg_mda_copies.
  - Adjust vg_mda_copies if metadataignore given with vgextend or pvchange.
  - Speed up the regex matcher.
  - Use "nowatch" udev rule for inappropriate devices.
  - Document LVM fault handling in lvm_fault_handling.txt.
  - Clarify help text for vg_mda_count.
  - Add more verbose messages while checking volume_list and hosttags settings.
  - Add log_error when strdup fails in {vg|lv}_change_tag().
  - Do not log backtrace in valid _lv_resume() code path.


author: Alasdair Kergon <agk@redhat.com> - 2.02.72-3
changelog:
  - Address lvm2-cluster security flaw CVE-2010-2526.
      https://bugzilla.redhat.com/CVE-2010-2526
  - Change clvmd to communicate with lvm2 via a socket in /var/run/lvm.
  - Return controlled error if clvmd is run by non-root user.
  - Never use clvmd singlenode unless explicitly requested with -Isinglenode.
  - Fix exported_symbols generation to use standard compiler arguments.
  - Use #include <> not "" in lvm2app.h which gets installed on the system.
  - Make liblvm.device-mapper wait for include file generation.
  - Fix configure to supply DEFAULT_RUN_DIR to Makefiles.
  - Fix wrong number of mirror log at allocate policy


author: Alasdair Kergon <agk@redhat.com> - 2.02.73-1
changelog:
  - Change default alignment of data extents to 1MB.
  - Add --norestorefile option to pvcreate.
  - Require --restorefile when using pvcreate --uuid.
  - Fix potential for corruption during cluster mirror device failure.
  - Ignore snapshots when performing mirror recovery beneath an origin.
  - Monitor origin -real device below snapshot instead of overlay device.
  - Don't really change monitoring status when in test mode.
  - Fix some exit statuses when starting/stopping monitoring fails.
  - Enable snapshot monitoring by default when dmeventd is enabled.
  - Fix 'lvconvert --splitmirrors' in cluster operation.
  - Fix clvmd init script exit code to return 4 when executed as non-root user.
  - Recognise and give preference to md device partitions (blkext major).
  - Never scan internal LVM devices.
  - Don't ignore user-specified PVs in split-mirror operations. (2.02.71)
  - Fix data corruption bug in cluster mirrors.
  - Require logical volume(s) to be explicitly named for lvconvert --merge.
  - Avoid changing aligned pe_start as a side-effect of a log message.
  - Use built-in rule for device aliases: block/ < dm- < disk/ < mapper/ < other.
  - Handle failure of all mirrored log devices and all but one mirror leg. 
  - Disallow 'mirrored' log type for cluster mirrors.
  - Fix configure to supply DEFAULT_RUN_DIR to Makefiles.
  - Fix allocation of wrong number of mirror logs with 'remove' fault policy.
  - Add dmeventd/executable to lvm.conf to test alternative dmeventd.
  - Fix udev rules to support udev database content generated by older rules.
  - Reinstate detection of inappropriate uevent with DISK_RO set and suppress it.
  - Fix regex ttree off-by-one error.
  - Fix segfault in regex matcher with characters of ordinal value > 127.
  - Wait for node creation before displaying debug info in dmsetup.
  - Fix return status 0 for "dmsetup info -c -o help".


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.73-2
changelog:
  - Add configure --with-default-data-alignment.
  - Update heuristic used for default and detected data alignment.
  - Add "devices/default_data_alignment" to lvm.conf.


author: Alasdair Kergon <agk@redhat.com> - 2.02.74-1
changelog:
  - Fix the way regions are marked complete to avoid slow --nosync cmirror I/O.
  - Add DM_REPORT_FIELD_TYPE_ID_LEN to libdevmapper.h.
  - Allow : and @ to be escaped with \ in device names of PVs.
  - Avoid stack corruption when reading in large metadata.
  - Fix partial mode operations for lvm1 metadata format.
  - Track recursive filter iteration to avoid refreshing while in use. (2.02.56)
  - Allocate buffer for metadata tags dynamically to remove 4k limit.
  - Add random suffix to archive file names to prevent races when being created.
  - Reinitialize archive and backup handling on toolcontext refresh.
  - Make poll_mirror_progress report PROGRESS_CHECK_FAILED if LV is not a mirror.
  - Like mirrors, don't scan origins if ignore_suspended_devices() is set.
  - Automatically generate tailored LSB Requires-Start for clvmd init script.
  - Fix return code of pvmove --abort PV.
  - Fix pvmove --abort to remove even for empty pvmove LV.
  - Add implementation for simple numeric 'get' property functions.
  - Simplify MD/swap signature detection in pvcreate and allow aborting.
  - Allow --yes to be used without --force mode.
  - Fix file descriptor leak in swap signature detection error path.
  - Detect and allow abort in pvcreate if LUKS signature is detected.


author: Alasdair Kergon <agk@redhat.com> - 2.02.73-3
changelog:
  - Add --setuuid to dmsetup rename.
  - Add dm_task_set_newuuid to set uuid of mapped device post-creation.


author: Alasdair Kergon <agk@redhat.com> - 2.02.75-1
changelog:
  - Fix pthread mutex usage deadlock in clvmd.
  - Avoid segfault by limiting partial mode for lvm1 metadata. (2.02.74)
  - Skip dm devices in scan if they contain only error targets or are empty.
  - Don't take write lock in vgchange --refresh, --poll or --monitor.
  - Fix hang when repairing a mirrored-log that had both devs fail.
  - Speed up unquoting of quoted double quotes and backslashes.
  - Speed up CRC32 calculations by using a larger lookup table.
  - Implement dmeventd -R to restart without state loss.
  - Add --setuuid to dmsetup rename.
  - Add global/metadata_read_only to use unrepaired metadata in read-only cmds.
  - Automatically extend snapshots with dmeventd according to policy in lvm.conf.
  - Add activation/snapshot_autoextend_threshold/percent to lvm.conf.
  - Add devices/disable_after_error_count config to limit access to failing devs.
  - Implement vgextend --restoremissing to reinstate missing devs that return.
  - Read whole /proc/self/maps file before working with maps entries.
  - Convey need for snapshot-merge target in lvconvert error message and man page.
  - Give correct error message when creating a too-small snapshot.
  - Make lvconvert respect --yes and --force when converting an inactive log.
  - Better support of noninteractive shell execution of fsadm.
  - Fix usage of --yes flag for ReiserFS resize in fsadm.
  - Fix detection of mounted filesystems for fsadm when udev is used.
  - Fix assignment of default value to LVM variable in fsadm.
  - Fix support for --yes flag for fsadm.
  - Do not execute lvresize from fsadm --dry-run.
  - Fix fsadm return error code from user's break action.
  - Return const pointer from dm_basename() in libdevmapper.
  - Add dm_zalloc and use it and dm_pool_zalloc throughout.
  - Add dm_task_set_newuuid to set uuid of mapped device post-creation.
  - Fix missing variable initialization in cluster_send() function from cmirrord.
  - Fix pointer for VG name in _pv_resize_single error code path.
  - Fix vg_read memory leak with directory-based metadata.
  - Fix memory leak of config_tree in reinitialization code path.
  - Fix pool destruction order in dmeventd_lvm2_exit() to avoid leak debug mesg.
  - Remove dependency on libm by replacing floor() by an integer-based algorithm.
  - Refactor and add 'get' functions for pv, vg and lv properties/fields.
  - Add pv_get_property and create generic internal _get_property function.
  - Make generic GET_*_PROPERTY_FN macros with secondary macro for vg, pv & lv.


author: Alasdair Kergon <agk@redhat.com> - 2.02.76-1
changelog:
  - Clarify error messages when activation fails due to activation filter use.
  - Fix handling of online filesystem resize (using new fsadm return code).
  - Modify fsadm to return different status code for check of mounted filesystem.
  - Add DIAGNOSTICS section to fsadm man page.
  - Update VG metadata only once in vgchange when making multiple changes.
  - Allow independent vgchange arguments to be used together.
  - Fix vgchange to process -a, --refresh, --monitor and --poll like lvchange.
  - Add dmeventd -R to restart dmeventd without losing monitoring state. (1.02.56)
  - Automatically unmount invalidated snapshots in dmeventd.
  - Add lvm2app functions to query any pv, vg, or lv property / report field.
  - Fix a deadlock caused by double close in clvmd.
  - Fix NULL pointer dereference on too-large MDA error path in _vg_read_raw_area.
  - Fix regex optimiser not to ignore RHS of OR nodes in _find_leftmost_common.
  - Fix memory leak of field_id in _output_field function.
  - Allocate buffer for reporting functions dynamically to support long outputs.


author: Alasdair Kergon <agk@redhat.com> - 2.02.77-1
changelog:
  - Add PV and LV segment types and functions to liblvm.
  - Add set_property functions to liblvm.
  - Remove tag length restriction and allow / = ! : # & characters.
  - Support repetition of --addtag and --deltag arguments.
  - Add infrastructure for specific cmdline arguments to be repeated in groups.
  - Fix fsadm no longer to require '-f' to resize an unmounted filesystem.
  - Fix fsadm to detect mounted filesystems on older systems. (2.0.75)
  - Extend cling allocation policy to recognise PV tags (cling_by_tags).
  - Add allocation/cling_tag_list to lvm.conf.


author: Alasdair Kergon <agk@redhat.com> - 2.02.78-1
changelog:
  - Miscellaneous error path corrections and minor leaks fixed.
  - Avoid misleading PV missing warnings in vgextend --restoremissing.
  - Ignore unrecognised allocation policy found in metadata instead of aborting.
  - Disallow lvconvert ops that both allocate & free supplied PEs in a single cmd.
  - Fix liblvm seg_size to give bytes not sectors.
  - Add functions to look up LV/PV by name/uuid to liblvm.
  - Suppress 'No PV label' message when removing several PVs without mdas.
  - Fix default /etc/lvm permissions to be 0755. (2.02.66)


author: Alasdair Kergon <agk@redhat.com> - 2.02.79-1
changelog:
  - Create /var/run/lvm directory during clvmd initialisation if missing.
  - Avoid revalidating the label cache immediately after scanning.
  - Support scanning for a single VG in independent mdas.
  - Don't skip full scan when independent mdas are present even if memlock is set.
  - Add copy_percent and snap_percent to liblvm.
  - Add new dm_prepare_selinux_context fn to libdevmapper and use it throughout.
  - Enhance vg_validate to ensure integrity of LV and PV structs referenced.
  - Enhance vg_validate to check composition of pvmove LVs.
  - Avoid writing to freed memory in vg_release.  (2.02.78)
  - Add missing test for reallocation error in _find_parallel_space().
  - Add checks for allocation errors in config node cloning.
  - Fix error path if regex engine cannot be created in _build_matcher().
  - Check read() and close() results in _get_cmdline().
  - Fix NULL pointer check in error path in clvmd do_command(). (2.02.78)
  - Check for unlink failure in remove_lockfile() in dmeventd.
  - Use dm_free for dm_malloc-ed areas in _clog_ctr/_clog_dtr in cmirrord.
  - Change dm_regex_create() API to accept const char * const *patterns.


author: Alasdair Kergon <agk@redhat.com> - 2.02.81-1
changelog:
  - Add disk to allowed mirrored log type conversions.
  - Accept fusion fio in device type filter.
  - Speed up command processing by caching resolved config tree.
  - Use same dm cookie for consecutive dm ops in same VG to reduce udev waits.
  - Do not scan devices in dev_reset_error_count() when forking.
  - Skip unnecessary LOCK_NULL unlock call during volume deactivation.
  - Skip fs_unlock when calling exec_cmd within activation code (for modprobe).
  - Replace fs_unlock by sync_local_dev_names to notify local clvmd. (2.02.80)
  - Fix wrongly paired unlocking of VG_GLOBAL in pvchange. (2.02.66)
  - Return 0 from cmirrord initscript 'start' if daemon is already running.
  - Add DM_COOKIE_AUTO_CREATE to libdevmapper.h.
  - Improve general lvconvert man page description.
  - Detect NULL handle in get_property().
  - Fix memory leak in persistent filter creation error path.
  - Check for errors setting up dm_task struct in _setup_task().
  - Fail polldaemon creation when lvmcache_init() fails.
  - Return PERCENT_INVALID for errors in _copy_percent() and _snap_percent().
  - Detect errors from dm_task_set calls in _get_device_info (dmeventd).
  - Fix memory leak in debug mode of restart_clvmd() error path.
  - Log error message for pthread_join() failure in clvmd.
  - Use tmpfiles.d/lvm2.conf to create /var/lock/lvm and /var/run/lvm at boot.
  - Require initscripts for tmpfiles.d/lvm2.conf.


author: Alasdair Kergon <agk@redhat.com> - 2.02.82-2
changelog:
  - Bring lvscan man page up-to-date.
  - Fix lvchange --test to exit cleanly.
  - Add change_tag to toollib.
  - Allow multiple pvchange command line options to be specified together.
  - Do not fail pvmove polling if another process cleaned up first.
  - Avoid clvmd incrementing dlm lockspace reference count more than once.
  - Add -f (don't fork) option to clvmd and fix clvmd -d<num> description.


author: Alasdair Kergon <agk@redhat.com> - 2.02.83-1
changelog:
  - Allow exclusive activation of snapshots in a cluster.
  - Don't lose LV exclusive lock state when suspending clustered devices.
  - Fix fs operation stack handling when multiple operations on same device.
  - Increase hash table sizes to 1024 LV names and 64 PV uuids.
  - When setting up mda wipe first 4k of it as was intended.
  - Remove unneeded checks for open_count in lv_info().
  - Synchronize with udev before checking open_count in lv_info().
  - Add "dmsetup ls --tree" output to lvmdump.
  - Fix udev synchronization with no-locking --sysinit (2.02.80).
  - Improve man page style consistency for pvcreate, pvremove, pvresize, pvscan.
  - Avoid rebuilding of uuid validation table.
  - Improve lvcreate error text from insufficient "extents" to "free space".
  - Always use O_DIRECT when opening block devices to check for partitioning.
  - Move creation of device nodes from 'create' to 'resume'.
  - Add --addnodeonresume and --addnodeoncreate options to dmsetup.
  - Add dm_task_set_add_node to libdevmapper to control dev node creation time.
  - Add dm_task_secure_data to libdevmapper to wipe ioctl buffers in kernel.
  - Log debug message when expected uevent is not generated.
  - Set DM_UDEV_DISABLE_OTHER_RULES_FLAG for suspended DM devices in udev rules.
  - Begin a new pool object for each row in _output_as_rows() correctly.


author: Alasdair Kergon <agk@redhat.com> - 2.02.84-1
changelog:
  - Fix big-endian CRC32 checksumming broken since 2.02.75.  If affected,
    ensure metadata backups in /etc/lvm/backup are up-to-date (vgcfgbackup)
    then after updating to 2.02.84 restore metadata from them (using pvcreate
    with -Zn --restorefile and -u if PVs can no longer be seen, then
    vgcfgrestore -f).
  - Reinstate libdevmapper DEBUG_MEM support. (Removed in 1.02.62.)


author: Milan Broz <mbroz@redhat.com> - 2.02.84-2
changelog:
  - Accept kernel 3.0 uname string in libdevmapper initialization.
  - Make systemd initscripts configurable.


author: Alasdair Kergon <agk@redhat.com> - 2.02.86-1
changelog:
  - Fix activation sequences to avoid trapped I/O with multiple LVs.
  - Fix activation sequences to avoid allocating tables while devs suspended.
  - Remove unnecessary warning in pvcreate for MD linear devices.
  - Add activation/checks to lvm.conf to perform additional ioctl validation.
  - Append 'm' attribute to pv_attr for missing PVs.
  - Fix to preserve exclusive activation of mirror while up-converting.
  - Reject allocation if number of extents is not divisible by area count.
  - Fix cluster mirror creation to work with new mirror allocation algorithm.
  - Ignore activation/verify_udev_operations if dm kernel driver vsn < 4.18.
  - Add activation/verify_udev_operations to lvm.conf, disabled by default.
  - Ignore inconsistent pre-commit metadata on MISSING_PV devs while activating.
  - Add proper udev library context initialization and finalization to liblvm.
  - Downgrade critical_section errors to debug level until it is moved to libdm.
  - Fix ignored background polling default in vgchange -ay.
  - Fix reduction of mirrors with striped segments to always align to stripe size.
  - Validate mirror segments size.
  - Fix extent rounding for striped volumes never to reduce more than requested.
  - Fix create_temp_name to replace any '/' found in the hostname with '?'.
  - Always use append to file in lvmdump. selinux policy may ban file truncation.
  - Propagate test mode to clvmd to skip activation and changes to held locks.
  - Permit --available with lvcreate so non-snapshot LVs need not be activated.
  - Clarify error message when unable to convert an LV into a snapshot of an LV.
  - Do not issue an error message when unable to remove .cache on read-only fs.
  - Avoid memlock size mismatch by preallocating stdio line buffers.
  - Report internal error if suspending a device using an already-suspended dev.
  - Report internal error if any table is loaded while any dev is known suspended.
  - Report error if a table load requiring target parameters has none supplied.
  - Add dmsetup --checks and dm_task_enable_checks framework to validate ioctls.
  - Add age_in_minutes parameter to dmsetup udevcomplete_all.
  - Disable udev fallback by default and add --verifyudev option to dmsetup.
  - Add dm_get_suspended_counter() for number of devs in suspended state by lib.
  - Fix "all" report field prefix matching to include label fields with pv_all.
  - Delay resuming new preloaded mirror devices with core logs in deptree code.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.86-2
changelog:
  - Add dm-event and lvm2-monitor unit files for use with systemd.
  - Add sysvinit subpackage for legacy SysV init script support.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.86-4
changelog:
  - Add support for systemd file descriptor handover to dmeventd.
  - Add support for new oom killer adjustment interface (oom_score_adj).


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.87-1
changelog:
  - Cache and share generated VG structs to improve performance.
  - Suppress locking error messages in monitoring init scripts.
  - Add global/detect_internal_vg_cache_corruption to lvm.conf.
  - If pipe in clvmd fails return busy instead of using uninitialised descriptors.
  - Initialise clvmd locks before lvm context to avoid open descriptor leaks.
  - Suppress low-level locking errors and warnings while using --sysinit.
  - Add test for fcntl error in singlenode client code.
  - Compare file size (as well as timestamp) to detect changed config file.
  - Change DEFAULT_UDEV_SYNC to 1 so udev_sync is used if there is no config file.
  - Update udev rules to skip DM flags decoding for removed devices.
  - Remove device name prefix from dmsetup line output if -j & -m or -u supplied.
  - Add new segtype 'raid' for MD RAID 1/4/5/6 support with dmeventd plugin.
  - Add ability to reduce the number of mirrors in raid1 arrays to lvconvert.
  - Add support for systemd file descriptor handover in dmeventd.
  - Add systemd unit file to provide lvm2 monitoring.
  - Add systemd unit files for dmeventd.
  - Use new oom killer adjustment interface (oom_score_adj) when available.
  - Fix read-only identical table reload supression.
  - Remove --force option from lvrename manpage.


author: Alasdair Kergon <agk@redhat.com> - 2.02.88-1
changelog:
  - Remove incorrect 'Breaking' error message from allocation code. (2.02.87)
  - Add lvconvert --merge support for raid1 devices split with --trackchanges.
  - Add --trackchanges support to lvconvert --splitmirrors option for raid1.
  - Add dm_tree_node_add_null_area for temporarily-missing raid devs tracked.
  - Support lvconvert of -m1 raid1 devices to a higher number.
  - Support splitting off a single raid1 rimage in lvconvert --splitmirrors.
  - Add -V as short form of --virtualsize in lvcreate.


author: Alasdair Kergon <agk@redhat.com> - 2.02.89-2
changelog:
  - New upstream release with experimental support for thinly-provisioned devices.
  - The changelog for this release is quite long and contained in 
    WHATS_NEW and WHATS_NEW_DM in the documentation directory.


author: Alasdair Kergon <agk@redhat.com> - 2.02.90-1
changelog:
  - Drop support for cman, openais and cmirror for f17. Require dlm not cluster.
  - Automatically detect whether corosync clvmd needs to use confdb or cmap.
  - Disable partial activation for thin LVs and LVs with all missing segments.
  - sync_local_dev_names before (re)activating mirror log for initialisation.
  - Do not print warning for pv_min_size between 512KB and 2MB.
  - Clean up systemd unit ordering and requirements.
  - Allow ALLOC_NORMAL to track reserved extents for log and data on same PV.
  - Fix data% report for thin volume used as origin for non-thin snapshot.


author: Alasdair Kergon <agk@redhat.com> - 2.02.92-1
changelog:
  - Read dmeventd monitoring config settings for every lvm command.
  - For thin devices, initialize monitoring only for thin pools not thin volumes.
  - Make conversion from a synced 'mirror' to 'raid1' not cause a full resync.
  - Add clvmd init dependency on dlm service when running with new corosync.
  - Switch to using built-in blkid in 13-dm-disk.rules.
  - Add "watch" rule to 13-dm-disk.rules.
  - Detect failing fifo and skip 20s retry communication period.
  - Replace any '\' char with '\\' in dm table specification on input.
  - New 'mangle' options in dmsetup/libdevmapper for transparent reversible 
    encoding of characters that udev forbids in device names.
  - Add --manglename option to dmsetup to select the name mangling mode.
  - Add mangle command to dmsetup to provide renaming to correct mangled form.
  - Add 'mangled_name' and 'unmangled_name' fields to dmsetup info -c -o.
  - Mangle device name on dm_task_set_name/newname call if necessary.
  - Add dm_task_get_name_mangled/unmangled to libdevmapper.
  - Add dm_set/get_name_mangling_mode to set/get name mangling in libdevmapper.


author: Alasdair Kergon <agk@redhat.com> - 2.02.93-1
changelog:
  - Moved systemd tmpfiles installation upstream for lvm2 lock and run dirs.
  - Require number of stripes to be greater than parity devices in higher RAID.
  - Fix allocation code to allow replacement of single RAID 4/5/6 device.
  - Check all tags and LV names are in a valid form before writing any metadata.
  - Allow 'lvconvert --repair' to operate on RAID 4/5/6.
  - Fix build_parallel_areas_from_lv to account correctly for raid parity devices.
  - Print message when faulty raid devices have been replaced.


author: Alasdair Kergon <agk@redhat.com> - 2.02.94-1
changelog:
  - Add support to execute thin_check with each de/active of thin pool.
  - Fix automatic estimation of metadata device size for thin pool.
  - Wipe initial 4KiB of non zeroed thin volumes.
  - Update code-base to incorporate new metadata daemon. (Not used in Fedora yet.)
  - Numerous minor cleanups across the code-base.
  - Fix dmsetup / dm_task_set_name to properly resolve path to dm name. (2.02.93)


author: Alasdair Kergon <agk@redhat.com> - 2.02.95-1
changelog:
  - If unspecified, adjust thin pool metadata and chunk size to fit into 128MB.
  - Deactivation of failed thin check on thin pool returns success.
  - Check for multiply-mangled names in auto mangling mode.
  - Fix dm_task_get_name_unmangled to not unmangle already unmangled name.
  - Check whether device names are properly mangled on ioctl return.


author: Fabio M. Di Nitto <fdinitto@redhat.com> - 2.02.95-3
changelog:
  - Rebuild against new corosync (soname change).
  - BuildRequires and Requires on newer version of corosync.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.95-4
changelog:
  - Reinstate cmirror support.
  - Detect lvm binary path in lvmetad udev rules.
  - Use pvscan --cache instead of vgscan in systemd units/init scripts.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.95-7
changelog:
  - Use BuildRequires: systemd-devel instead of BuildRequires: libudev-devel.
  - Remove unsupported udev_get_dev_path libudev call used for checking udev dir.


author: Kay Sievers - 2.02.95-8
changelog:
  - Remove explicit Requires: libudev, rpm takes care of that:
      $ rpm -q --requires device-mapper | grep udev
      libudev.so...


author: Alasdair Kergon <agk@redhat.com> - 2.02.96-1
changelog:
  - Require device-mapper-persistent-data package for thin provisioning.
  - Set delay_resume_if_new on deptree snapshot origin.
  - Log value chosen in _find_config_bool like other variable types do.
  - Wait for dmeventd to exit after sending it DM_EVENT_CMD_DIE when restarting.
  - Append 'Used' to {Blk}DevNames/DevNos dmsetup report headers for clarity.
  - Remove dmeventd fifos on exit if they are not managed by systemd.
  - Use SD_ACTIVATION environment variable in systemd units to detect systemd.
  - Only start a new dmeventd instance on restart if one was already running.
  - Extend the time waited for input from dmeventd fifo to 5 secs. (1.02.73)
  - Fix error paths for regex filter initialization.
  - Re-enable partial activation of non-thin LVs until it can be fixed. (2.02.90)
  - Fix alloc cling to cling to PVs already found with contiguous policy.
  - Fix cling policy not to behave like normal policy if no previous LV seg.
  - Fix allocation loop not to use later policies when --alloc cling without tags.
  - Fix division by zero if PV with zero PE count is used during vgcfgrestore.
  - Add initial support for thin pool lvconvert.
  - Fix lvrename for thin volumes (regression in for_each_sub_lv). (2.02.89)
  - Fix up-convert when mirror activation is controlled by volume_list and tags.
  - Warn of deadlock risk when using snapshots of mirror segment type.
  - Fix bug in cmirror that caused incorrect status info to print on some nodes.
  - Remove statement that snapshots cannot be tagged from lvm man page.
  - Disallow changing cluster attribute of VG while RAID LVs are active.
  - Fix lvconvert error message for non-mergeable volumes.
  - Allow subset of failed devices to be replaced in RAID LVs.
  - Prevent resume from creating error devices that already exist from suspend.
  - Update and correct lvs man page with supported column names.
  - Handle replacement of an active device that goes missing with an error device.
  - Change change raid1 segtype always to request a flush when suspending.
  - Add udev info and context to lvmdump.
  - Add lvmetad man page.
  - Fix RAID device replacement code so that it works under snapshot.
  - Fix inability to split RAID1 image while specifying a particular PV.
  - Update man pages to give them all the same look&feel.
  - Fix lvresize of thin pool for striped devices.
  - For lvresize round upward when specifying number of extents.
  - For lvcreate with %FREE support rounding downward stripe alignment.
  - Change message severity to log_very_verbose for missing dev info in udev db.
  - Fix lvconvert when specifying removal of a RAID device other than last one.
  - Fix ability to handle failures in mirrored log in dmeventd plugin. (2.02.89)
  - Fix unlocking volume group in vgreduce in error path.
  - Cope when VG name is part of the supplied name in lvconvert --splitmirrors -n.
  - Fix exclusive lvchange running from other node. (2.02.89)
  - Add 'vgscan --cache' functionality for consistency with 'pvscan --cache'.
  - Keep exclusive activation in pvmove if LV is already active.
  - Disallow exclusive pvmove if some affected LVs are not exclusively activated.
  - Remove unused and wrongly set cluster VG flag from clvmd lock query command.
  - Fix pvmove for exclusively activated LV pvmove in clustered VG. (2.02.86)
  - Update and fix monitoring of thin pool devices.
  - Check hash insert success in lock_vg in clvmd.
  - Check for buffer overwrite in get_cluster_type() in clvmd.
  - Fix global/detect_internal_vg_cache_corruption config check.
  - Fix initializiation of thin monitoring. (2.02.92)
  - Cope with improperly formatted device numbers in /proc/devices. (2.02.91)
  - Exit if LISTEN_PID environment variable incorrect in lvmetad systemd handover.
  - Fix fsadm propagation of -e option.
  - Fix fsadm parsing of /proc/mounts files (don't check for substrings).
  - Fix fsadm usage of arguments with space.
  - Fix arg_int_value alongside ARG_GROUPABLE --major/--minor for lvcreate/change.
  - Fix name conflicts that prevent down-converting RAID1 when specifying a device
  - Improve thin_check option passing and use configured path.
  - Add --with-thin-check configure option for path to thin_check.
  - Fix error message when pvmove LV activation fails with name already in use.
  - Better structure layout for device_info in dev_subsystem_name().
  - Change message severity for creation of VG over uninitialised devices.
  - Fix error path for failed toolcontext creation.
  - Don't unlink socket on lvmetad shutdown if instantiated from systemd.
  - Restart lvmetad automatically from systemd if it exits from uncaught signal.
  - Fix warn msg for thin pool chunk size and update man for chunksize. (2.02.89)


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.96-2
changelog:
  - Compile with lvmetad support enabled.
  - Add support for volume autoactivation using lvmetad.
  - Update man pages with --activate ay option and auto_activation_volume_list.
  - Use vgchange -aay instead of vgchange -ay in clmvd init script.
  - Add activation/auto_activation_volume_list to lvm.conf.
  - Add --activate ay to lvcreate, lvchange, pvscan and vgchange.
  - Add --activate synonym for --available arg and prefer --activate.
  - Open device read-only to obtain readahead value.
  - Add configure --enable-udev-rule-exec-detection to detect exec path in rules.
  - Use sbindir in udev rules by default and remove executable path detection.
  - Remove hard-coded paths for dmeventd fifos and use default-dm-run-dir.
  - Add configure --with-lvmetad-pidfile to remove hard-coded value.
  - Add configure --with-default-pid-dir for common directory with pid files.
  - Add configure --with-default-dm-run-dir to set run directory for dm tools.
  - Add documentation references in systemd units.
  - Clean up spec file and keep support only for Fedora 17 upwards.


author: Alasdair Kergon <agk@redhat.com> - 2.02.97-1
changelog:
  - Improve documention of allocation policies in lvm.8.
  - Increase limit for major:minor to 4095:1048575 when using -My option.
  - Add generator for lvm2 activation systemd units.
  - Add lvm_config_find_bool lvm2app fn to retrieve bool value from config tree.
  - Respect --test when using lvmetad.
  - No longer capitalise first LV attribute char for invalid snapshots.
  - Allow vgextend to add PVs to a VG that is missing PVs.
  - Recognise Micron PCIe SSDs in filter and move array out to device-types.h.
  - Fix dumpconfig <node> to print only <node> without its siblings. (2.02.89)
  - Do not issue "Failed to handle a client connection" error if lvmetad killed.
  - Support lvchange --discards and -Z with thin pools.
  - Add discard LV segment field to reports.
  - Add --discards to lvcreate --thin.
  - Set discard and external snapshot features if thin pool target is vsn 1.1+.
  - Count percentage of completeness upwards not downwards when merging snapshot.
  - Skip activation when using vg/lvchange --sysinit -a ay and lvmetad is active.
  - Fix extending RAID 4/5/6 logical volumes
  - Fix test for PV with unknown VG in process_each_pv to ignore ignored mdas.
  - Fix _alloc_parallel_area to avoid picking already-full areas for raid devices.
  - Never issue discards when LV extents are being reconfigured, not deleted.
  - Allow release_lv_segment_area to fail as functions it calls can fail.
  - Fix missing sync of filesystem when creating thin volume snapshot.
  - Allow --noflush with dmsetup status and wait (for thin target).
  - Add dm_config_write_one_node to libdevmapper.
  - Add dm_vasprintf to libdevmapper.
  - Support thin pool message release/reserve_metadata_snap in libdevmapper.
  - Support thin pool discards and external origin features in libdevmapper.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.98-1
changelog:
  - Don't try to issue discards to a missing PV to avoid segfault.
  - Fix vgchange -aay not to activate non-matching LVs that follow a matching LV.
  - Fix lvchange --resync for RAID LVs which had no effect.
  - Add RAID10 support (--type raid10).
  - Introduce blkdeactivate script to deactivate block devs with dependencies.
  - Apply 'dmsetup mangle' for dm UUIDs besides dm names.
  - Use -q as short form of --quiet.
  - Suppress non-essential stdout with -qq.
  - Add log/silent to lvm.conf equivalent to -qq.
  - Add (p)artial attribute to lvs.
  - Implement devices/global_filter to hide devices from lvmetad.
  - Add lvmdump -l, to collect a state dump from lvmetad.
  - Add --discards to lvconvert.
  - Add support for lvcreate --discards.
  - Add --poolmetadata to lvconvert and support thin meta/data dev stacking.
  - Support creation of read-only thin volumes (lvcreate -p r).
  - Support changes of permissions for thin snapshot volumes.
  - Make lvremove ask before discarding data areas.
  - Prohibit not yet supported change of thin-pool to read-only.
  - Using autoextend percent 0 for thin pool fails 'lvextend --use-policies'.
  - Make vgscan --cache an alias for pvscan --cache.
  - Clear lvmetad metadata/PV cache before a rescan.
  - Fix a segmentation fault upon receiving a corrupt lvmetad response.
  - Give inconsistent metadata warnings in pvscan --cache.
  - Avoid overlapping locks that could cause a deadlock in lvmetad.
  - Fix memory leaks in libdaemon and lvmetad.
  - Optimize libdaemon logging for a fast no-output path.
  - Only create lvmetad pidfile when running as a daemon (no -f).
  - Warn if lvmetad is running but disabled.
  - Warn about running lvmetad with use_lvmetad = 0 in example.conf.
  - Update lvmetad help output (flags and their meaning).
  - Make pvscan --cache read metadata from LVM1 PVs.
  - Make libdaemon buffer handling asymptotically more efficient.
  - Make --sysinit suppress lvmetad connection failure warnings.
  - Prohibit usage of lvcreate --thinpool with --mirrors.
  - Fix lvm2api origin reporting for thin snapshot volume.
  - Add implementation of lvm2api function lvm_percent_to_float.
  - Allow non power of 2 thin chunk sizes if thin pool driver supports that.
  - Allow limited metadata changes when PVs are missing via [vg|lv]change.
  - Do not start dmeventd for lvchange --resync when monitoring is off.
  - Remove pvscan --cache from lvm2-lvmetad init script.
  - Remove ExecStartPost with pvscan --cache from lvm2-lvmetad.service.
  - Report invalid percentage for property snap_percent of non-snaphot LVs.
  - Disallow conversion of thin LVs to mirrors.
  - Fix lvm2api data_percent reporting for thin volumes.
  - Do not allow RAID LVs in a clustered volume group.
  - Enhance insert_layer_for_lv() with recursive rename for _tdata LVs.
  - Skip building dm tree for thin pool when called with origin_only flag.
  - Ensure descriptors 0,1,2 are always available, using /dev/null if necessary.
  - Use /proc/self/fd when available for closing opened descriptors efficiently.
  - Fix inability to create, extend or convert to a large (> 1TiB) RAID LV.
  - Update lvmetad communications to cope with clients using different filters.
  - Clear LV_NOSYNCED flag when a RAID1 LV is converted to a linear LV.
  - Disallow RAID1 upconvert if the LV was created with --nosync.
  - Depend on systemd-udev-settle in units generated by activation generator.
  - Disallow addition of RAID images until the array is in-sync.
  - Fix RAID LV creation with '--test' so valid commands do not fail.
  - Add lvm_lv_rename() to lvm2api.
  - Fix setvbuf code by closing and reopening stream before changing buffer.
  - Disable private buffering when using liblvm.
  - When private stdin/stdout buffering is not used always use silent mode.
  - Fix 32-bit device size arithmetic needing 64-bit casting throughout tree.
  - Fix dereference of NULL in lvmetad error path logging.
  - Fix buffer memory leak in lvmetad logging.
  - Correct the discards field in the lvs manpage (2.02.97).
  - Use proper condition to check for discards settings unsupported by kernel.
  - Reinstate correct default to ignore discards for thin metadata from old tools.
  - Issue error message when -i and -m args do not match specified RAID type.
  - Change lvmetad logging syntax from -ddd to -l {all|wire|debug}.
  - Add new libdaemon logging infrastructure.
  - Support unmount of thin volumes from pool above thin pool threshold.
  - Update man page to reflect that dm UUIDs are being mangled as well.
  - Add 'mangled_uuid' and 'unmangled_uuid' fields to dmsetup info -c -o.
  - Mangle device UUID on dm_task_set_uuid/newuuid call if necessary.
  - Add dm_task_get_uuid_mangled/unmangled to libdevmapper.
  - Always reset delay_resume_if_new flag when stacking thin pool over anything.
  - Don't create value for dm_config_node and require dm_config_create_value call.
  - Check for existing new_name for dmsetup rename.
  - Fix memory leak in dmsetup _get_split_name() error path.
  - Clean up spec file and keep support only for Fedora 18 upwards.
  - Use systemd macros in rpm scriptlets to set up systemd units.
  - Add Requires: bash >= 4.0 for blkdeactivate script.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.98-3
changelog:
  - Add lvm2-activation-generator systemd generator to automatically generate
    systemd units to activate LVM2 volumes even if lvmetad is not used.
    This replaces lvm activation part of the former fedora-storage-init
    script that was included in the initscripts package before.
  - Enable lvmetad - the LVM metadata daemon by default.
  - Exit pvscan --cache immediately if cluster locking used or lvmetad not used.
  - Don't use lvmetad in lvm2-monitor.service ExecStop to avoid a systemd issue.
  - Remove dependency on fedora-storage-init.service in lvm2 systemd units.
  - Depend on lvm2-lvmetad.socket in lvm2-monitor.service systemd unit.
  - Init lvmetad lazily to avoid early socket access on config overrides.
  - Hardcode use_lvmetad=0 if cluster locking used and issue a warning msg.
  - Fix dm_task_set_cookie to properly process udev flags if udev_sync disabled.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.98-6
changelog:
  - Synchronize with udev in pvscan --cache and fix dangling udev_sync cookies.
  - Fix autoactivation to not autoactivate VG/LV on each change of the PVs used.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.98-9
changelog:
  - Fix 'dmsetup splitname -o' to not fail if used without '-c' switch (1.02.68).
  - Close open dmeventd FIFO file descriptors on exec (FD_CLOEXEC).
  - Fix premature DM version checking which caused useless mapper/control access.
  - Recognize DM_DISABLE_UDEV environment variable for a complete fallback.
  - Do not verify udev operations if --noudevsync command option is used.
  - Fix blkdeactivate to handle nested mountpoints and mangled mount paths.
  - Fix a crash-inducing race condition in lvmetad while updating metadata.
  - Fix possible race while removing metadata from lvmetad.
  - Fix possible deadlock when querying and updating lvmetad at the same time.
  - Avoid a global lock in pvs when lvmetad is in use.
  - Fix crash in pvscan --cache -aay triggered by non-mda PV.
  - Fix lvm2app to return all property sizes in bytes.
  - Add lvm.conf option global/thin_disabled_features.
  - Add lvconvert support to swap thin pool metadata volume.
  - Implement internal function detach_pool_metadata_lv().
  - Fix lvm2app and return lvseg discards property as string.
  - Allow forced vgcfgrestore of lvm2 metadata with thin volumes.
  - Add lvm.conf thin pool defs thin_pool_{chunk_size|discards|zero}.
  - Support discards for non-power-of-2 thin pool chunks.
  - Support allocation of pool metadata with lvconvert command.
  - Move common functionality for thin lvcreate and lvconvert to toollib.
  - Use lv_is_active() instead of lv_info() call.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.99-1
changelog:
  -  o Features/Extensions/Additions:
  - Add support for poolmetadataspare LV, that will be used for pool recovery.
  - Improve activation order when creating thin pools in non-clustered VG.
  - Add lvm2-activation-net systemd unit to activate LVs on net-attached storage.
  - Automatically flag thin snapshots to be skipped during activation.
  - Add support for persistent flagging of LVs to be skipped during activation.
  - Make selected thinp settings customizable by a profile.
  - Support storing profile name in metadata for both VGs and LVs.
  - Add support for configuration profiles.
  - Add support for thin volumes in vgsplit.
  - Add lvresize support for online thin pool metadata volume resize.
  - Add detection for thin pool metadata resize kernel support.
  - Add vg->vg_ondisk / lv_ondisk() holding committed metadata.
  - Add detection of mounted fs also for vgchange deactivation.
  - Detect maximum usable size for snapshot for lvresize.
  - Improve RAID kernel status retrieval to include sync_action/mismatch_cnt.
  - Add external origin support for lvcreate.
  - Support automatic config validation.
  - Add PV header extension: extension version, flags and bootloader areas.
  - Initial support for lvconvert of thin external origin.
  - Improve activation code for better support of stacked devices.
  - vgimport '--force' now allows import of VGs with missing PVs.
  - Allow removal or replacement of RAID LV components that are error segments.
  - Make 'vgreduce --removemissing' able to handle RAID LVs with missing PVs.
  - Give precedence to EMC power2 devices with duplicate PVIDs.
  - Recognise Storage Class Memory (IBM S/390) devices in filter.
  - Recognise STEC skd devices in filter.
  - Recognise Violin Memory vtms devices in filter.
  - Automatically restore MISSING PVs with no MDAs.
  - Detect mounted fs also via reading /proc/self/mountinfo.
  -  o Command Interface/Options:
  - Support ARG_GROUPABLE with merge_synonym (for --raidwritemostly).
  - Add --ignoreactivationskip to lvcreate/vgchange/lvchange to ignore skip flag.
  - Add --setactivationskip to lvcreate/lvchange to set activation skip flag.
  - Add --type profilable to lvm dumpconfig to show profilable config settings.
  - Add --mergedconfig to lvm dumpconfig for merged --config/--profile/lvm.conf.
  - Support changing VG/LV profiles: vgchange/lvchange --profile/--detachprofile.
  - Add new --profile command line arg to select a configuration profile for use.
  - For creation of snapshot require size for at least 3 chunks.
  - Do not accept size parameters bigger then 16EiB.
  - Accept --yes in all commands so test scripts can be simpler.
  - Add lvcreate/lvchange --[raid]{min|max}recoveryrate for raid LVs.
  - Add lvchange --[raid]writemostly/writebehind support for RAID1
  - Add lvchange --[raid]syncaction for scrubbing of RAID LVs.
  - Add --validate option to lvm dumpconfig to validate current config on demand.
  - Add --ignoreadvanced and --ignoreunsupported switch to lvm dumpconfig.
  - Add --withcomments and --withversions switch to lvm dumpconfig.
  - Add --type {current|default|missing|new} and --atversion to lvm dumpconfig.
  - Add --bootloaderareasize to pvcreate and vgconvert to create bootloader area.
  - Do not take a free lv name argument for lvconvert --thinpool option.
  - Allow lvconvert --stripes/stripesize only with --mirrors/--repair/--thinpool.
  - Do not ignore -f in lvconvert --repair -y -f for mirror and raid volumes.
  - Support use of option --yes for lvchange --persistent.
  - Fix clvmd support for option -d and properly use its argument.
  -  o Reporting:
  - Issue an error msg if lvconvert --type used incorrectly with other options.
  - Use LOG_DEBUG/ERR msg severity instead default for lvm2-activation-generator.
  - Add LV report fields: raid_mismatch_count/raid_sync_action/raid_write_behind.
  - Add LV reporting fields raid_min_recovery_rate, raid_max_recovery_rate.
  - Add sync_percent as alias for copy_percent LV reporting field.
  - Add lv_ prefix to modules reporting field.
  - Use units B or b (never E) with no decimal places when displaying sizes < 1k.
  - List thin-pool and thin modules for thin volumes.
  - Add 's(k)ip activation' bit to lvs -o lv_attr to indicate skip flag attached.
  - Improve error loging when user tries to interrupt commands.
  - Add vgs/lvs -o vg_profile/lv_profile to report profiles attached to VG/LV.
  - Report lvs volume type 'e' with higher priority.
  - Report lvs volume type 'o' also for external origin volumes.
  - Report lvs target type 't' only for thin pools and thin volumes.
  - Add "active" LV reporting field to show activation state.
  - Add "monitor" segment reporting field to show dmevent monitoring status.
  - Add explicit message about unsupported pvmove for thin/thinpool volumes.
  - Add pvs -o pv_ba_start,pv_ba_size to report bootloader area start and size.
  - Fix pvs -o pv_free reporting for PVs with zero PE count.
  - Report blank origin_size field if the LV doesn't have an origin instead of 0.
  - Report partial and in-sync RAID attribute based on kernel status
  - Log output also to syslog when abort_on_internal_error is set.
  - Change lvs heading Copy% to Cpy%Sync and print RAID4/5/6 sync% there too.
  - Report error for nonexisting devices in dmeventd communication.
  - Reduce some log_error messages to log_warn where we don't fail.
  -  o Configuration:
  - Add activation/auto_set_activation_skip to control activation skip flagging.
  - Add default.profile configuration profile and install it on make install.
  - Add config/profile_dir to set working directory to load profiles from.
  - Use mirror_segtype_default if type not specified for linear->mirror upconvert.
  - Refine lvm.conf and man page documentation for autoactivation feature.
  - Override system's global_filter settings for vgimportclone.
  - Find newest timestamp of merged config files.
  - Add 'config' section to lvm.conf to set the way the LVM configuration is handled.
  - Add global/raid10_segtype_default to lvm.conf.
  - Accept activation/raid_region_size in preference to mirror_region_size config.
  - Add log/debug_classes to lvm.conf to control debug log messages.
  - Allow empty activation/{auto_activation|read_only|}_volume_list config option.
  - Relax ignore_suspended_devices to read from mirrors that don't have a device marked failed.
  -  o Documentation:
  - Add man page entries for profile configuration and related options.
  - Document lvextend --use-policies option in man.
  - Improve lvcreate, lvconvert and lvm man pages.
  -  o API/interfaces:
  - liblvm/python API: Additions: PV create/removal/resize/listing
  - liblvm/python API: Additions: LV attr/origin/Thin pool/Thin LV creation
  - Fix exported symbols regex for non-GNU busybox sed.
  - Add LV snapshot support to liblvm and python-lvm.
  - Remove python liblvm object. systemdir can only be changed using env var now.
  - Add dm_get_status_snapshot() for parsing snapshot status.
  - Append discards and read-only fields to exported struct dm_status_thin_pool.
  - Validate passed params to dm_get_status_raid/thin/thin_pool().
  - Add dm_mountinfo_read() for parsing /proc/self/mountinfo.
  - Add dm_config_write_{node_out/one_node_out} for enhanced config output.
  - Add dm_config_value_is_bool to check for boolean value in supported formats.
  - Add DM_ARRAY_SIZE public macro.
  - Add DM_TO_STRING public macro.
  - Implement ref-counting for parents in python lib.
  -  o Fixes (general):
  - Do not zero init 4KB of thin snapshot for non-zeroing thin pool (2.02.94).
  - Correct thin creation error paths.
  - Add whole log_lv and metadata_lv sub volumes when creating partial tree.
  - Properly use snapshot layer for origin which is also thin volume.
  - Avoid generating metadata backup when calling update_pool_lv().
  - Send thin messages also for active thin pool and inactive thin volume.
  - Avoid creation of multiple archives for one command.
  - Avoid flushing thin pool when just requesting transaction_id.
  - Fix use of too big chunks of memory when communication with lvmetad.
  - Also filter partitions on mpath components if multipath_component_detection=1.
  - Do not use persistent filter with lvmetad.
  - Move syslog code out of signal handle in dmeventd.
  - Fix lvresize --use-policies of VALID but 100% full snapshot.
  - Skip monitoring of snapshots that are already bigger then origin.
  - Refuse to init a snapshot merge in lvconvert if there's no kernel support.
  - Fix alignment of PV data area if detected alignment less than 1 MB (2.02.74).
  - Fix creation and removal of clustered snapshot.
  - Fix clvmd caching of metadata when suspending inactive volumes.
  - Fix lvmetad error path in lvmetad_vg_lookup() for null vgname.
  - Fix clvmd _cluster_request() return code in memory fail path.
  - Fix vgextend to not allow a PV with 0 MDAs to be used while already in a VG.
  - Fix PV alignment to incorporate alignment offset if the PV has zero MDAs.
  - Fix missing cleanup of flags when the LV is detached from pool.
  - Fix check for some forbidden discards conversion of thin pools.
  - Limit RAID device replacement to repair only if LV is not in-sync.
  - Disallow RAID device replacement or repair on inactive LVs.
  - Unlock vg mutex in error path when lvmetad tries to lock_vg.
  - Detect key string duplication failure in config_make_nodes_v in libdaemon.
  - Disallow pvmove on RAID LVs until they are addressed properly
  - Recognize DM_DISABLE_UDEV environment variable for a complete fallback.
  - When no --stripes argument is given when creating a RAID10 volume, default to 2 stripes.
  - Do not allow lvconvert --splitmirrors on RAID10 logical volumes.
  - Repair a mirrored log before the mirror itself when both fail.
  - Avoid trying to read a mirror that has a failed device in its mirrored log.
  - Fix segfault for truncated string token in config file after the first '"'.
  - Fix config node lookup inside empty sections to not return the section itself.
  - Fix parsing of 64bit snapshot status in dmeventd snapshot plugin.
  - Always return success on dmeventd -V command call.
  -  o Fixes (segfaults/crashes/deadlocks/races):
  - Fix segfault when reporting raid_syncaction for older kernels.
  - Fix vgcfgrestore crash when specified incorrect vg name.
  - Check for memory failure of dm_config_write_node() in lvmetad.
  - Prevent double free error after dmeventd call of _fill_device_data().
  -  o Fixes (resource leaks/memleaks):
  - Release memory allocated with _cached_info().
  - Release memory and unblock signals in lock_vol error path.
  - Fix memory resource leak in memlocking error path.
  - Fix memleak in dmeventd thin plugin in device list obtaining err path.
  - Fix socket leak on error path in lvmetad's handle_connect.
  - Fix memleak on error path for lvmetad's pv_found.
  - Fix memleak in device_is_usable mirror testing function.
  - Fix memory leak on error path for pvcreate with invalid uuid.
  - Fix resource leak in error path of dmeventd's umount of thin volume.
  -  o Testing:
  - Fix test for active snapshot in cluster before resizing it.
  - Add python-lvm unit test case
  -  o Other:
  - Use local activation for clearing snapshot COW device.
  - Add configure --with-default-profile-subdir to select dir to keep profiles in.
  - Creation of snapshot takes at most 100% origin coverage.
  - Use LC_ALL to set locale in daemons and fsadm instead of lower priority LANG.
  - Optimize out setting the same value of read_ahead.
  - Automatically deactivate failed preloaded dm tree node.
  - Process thin messages once to active thin pool target for dm_tree.
  -  o Packaging:
  - Add /etc/lvm/profile dir and /etc/lvm/profile/default.profile to lvm2 package.
  - Do not include /lib/udev and /lib/udev/rules.d in device-mapper package.
  - Fix some incorrect changelog dates.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.99-2
changelog:
  - Fix metadata area offset/size overflow if it's >= 4g and while using lvmetad.
  - Require the newest device-mapper-persistent-data-0.2.3-1.
  - Fix spec file's util-linux version definition for proper expansion when used.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.102-1
changelog:
  - Fix missing build dependency for scripts subdir in Makefile.
  - Fix node up/down handling in clvmd corosync module.
  - Fix 3-thread clvmd deadlock triggered by cleanup on EOF from client.
  - Remove VG from lvmetad before restoring it with vgcfgrestore.
  - Add devtypes report command to display built-in recognised block device types.
  - Fix CC Makefile override which had reverted to using built-in value. (2.02.75)
  - Recognise bcache block devices in filter (experimental).
  - Run lvm2-activation-net after lvm2-activation service to prevent parallel run.
  - Add man page entries for lvmdump's -u and -l options.
  - Fix lvm2app segfault while using lvm_list_pvs_free fn if there are no PVs.
  - Improve of clvmd singlenode locking simulation.
  - lvconvert no longer converts LVs of "mirror" segment type to thinpool.
  - lvconvert no longer converts thinpool sub-LVs to "mirror" segment type.
  - Direct udev to use 3min timeout for LVM devices. Recent udev has default 30s.
  - Do not scan multipath or RAID components and avoid incorrect autoactivation.
  - Fix MD/loop udev handling to fire autoactivation after setup or coldplug only.
  - Make RAID capable of single-machine exclusive operations in a cluster.
  - Drop calculation of read ahead for deactivated volume.
  - Check for exactly one lv segment in validation of thin pools and volumes.
  - Fix dmeventd unmonitoring of thin pools.
  - Fix lvresize for stacked thin pool volumes (i.e. mirrors).
  - Write Completed debug message before reinstating log defaults after command.
  - Refresh existing VG before autoactivation (event retrigger/device reappeared).
  - Use pvscan -b in udev rules to avoid a deadlock on udev process count limit.
  - Add pvscan -b/--background for the command to be processed in the background.
  - Don't assume stdin file descriptor is readable.
  - Avoid unlimited recursion when creating dtree containing inactive pvmove LV.
  - Require exactly 3 arguments for lvm2-activation-generator. Remove defaults.
  - Inform lvmetad about any lost PV label to make it in sync with system state.
  - Support most of lvchange operations on stacked thin pool meta/data LVs.
  - Enable non-clustered pvmove of snapshots and snapshot origins.
  - Add ability to pvmove non-clustered RAID, mirror, and thin volumes.
  - Make lvm2-activation-generator silent unless it's in error state.
  - Remove "mpath major is not dm major" msg for mpath component scan (2.02.94).
  - Prevent cluster mirror logs from being corrupted by redundant checkpoints.
  - Fix ignored lvmetad update on loop device configuration (2.02.99).
  - Use LVM_PATH instead of hardcoded value in lvm2 activation systemd generator.
  - Fix vgck to notice on-disk corruption even if lvmetad is used.
  - Move mpath device filter before partitioned filter (which opens devices).
  - Require confirmation for vgchange -c when no VGs listed explicitly.
  - Also skip /var and /var/log by default in blkdeactivate when unmounting.
  - Add support for bind mounts in blkdeactivate.
  - Add blkdeactivate -v/--verbose for debug output from external tools used.
  - Add blkdeactivate -e/--errors for error messages from external tools used.
  - Suppress messages from external tools called in blkdeactivate by default.
  - Fix inability to remove a VG's cluster flag if it contains a mirror.
  - Fix bug making lvchange unable to change recovery rate for RAID.
  - Prohibit conversion of thin pool to external origin.
  - Workaround gcc v4.8 -O2 bug causing failures if config/checks=1 (32bit arch).
  - Verify clvmd message validity before processing and log error if incorrect.
  - When creating PV on existing LV don't forbid reserved LV names on LVs below.
  - When converting mirrors, default segtype should be the same unless specified.
  - Make "raid1" the default mirror segment type.
  - Fix clogd descriptor leak when daemonizing.
  - Fix clvmd descriptor leak on restart.
  - Add pipe_open/close() to use instead of less efficient/secure popen().
  - Inherit and apply any profile attached to a VG if creating new thin pool.
  - Add initial support thin pool lvconvert --repair.
  - Add --with-thin-repair and --with-thin-dump configure options.
  - Add lvm.conf thin_repair/dump_executable and thin_repair_options.
  - Require 1.9 thin pool target version for online thin pool metadata resize.
  - Ignore previous LV seg with alloc contiguous & cling when num stripes varies.
  - Fix segfault if devices/global_filter is not specified correctly.
  - Tidy dmeventd fifo initialisation.
  - Detect invalid sector supplied to 'dmsetup message'.
  - Free any previously-set string if a dm_task_set_* function is called again.
  - Do not allow passing empty new name for dmsetup rename.
  - Display any output returned by 'dmsetup message'.
  - Add dm_task_get_message_response to libdevmapper.
  - Create dmeventd timeout threads as "detached" so exit status is freed.
  - Add DM_ABORT_ON_INTERNAL_ERRORS env var support to abort on internal errors.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.103-1
changelog:
  - Ensure vgid matches before removing vgname entry from lvmetad cache.
  - Add --ignoreskippedcluster for exit status success when clustered VGs skipped.
  - Fix 3 minute udev timeout so that it is applied for all LVM volumes.
  - Fix thin/raid & activation config defaults with configure --disable-devmapper.
  - Fix RAID calculation for sufficient allocatable space.
  - lvconvert from linear to mirror or RAID1 now honors mirror_segtype_default.
  - Add thin-performance configuration profile.
  - Add lvm.conf allocation/thin_pool_chunk_size_policy option.
  - Fix contiguous & cling allocation policies for parity RAID.  (2.02.100)
  - Have lvmconf --enable/disable-cluster reset/set use_lvmetad.
  - Add seg_size_pe field to reports.
  - Support start+length notation with command line PE ranges.
  - Exit cleanly with message when pvmove cannot restart because LV is inactive.
  - Define symbolic names for subsystem udev flags in libdevmapper for easier use.
  - Make subsystem udev rules responsible for importing DM_SUBSYSTEM_UDEV_FLAG*.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.103-2
changelog:
  - Add internal flag for temporary LVs to properly direct udev to not interfere.
  - Fix endless loop in blkdeactivate <device>... if unable to umount/deactivate.
  - Add dev-block-<major>:<minor>.device systemd alias for complete PV tracking.
  - Use major:minor as short form of --major and --minor arg for pvscan --cache.
  - Remove 2>/dev/null from three lvm commands executed by vgimportclone.
  - Add configure --enable-udev-systemd-background-jobs.
  - Add lvm2-pvscan@.service to run pvscan as a service for lvmetad/autoactivation.
  - Fix lvconvert swap of poolmetadata volume for active thin pool.
  - Check for open count with a timeout before removal/deactivation of an LV.
  - Report RAID images split with tracking as out-of-sync ("I").
  - Improve parsing of snapshot lv segment.
  - Add workaround for deactivation problem of opened virtual snapshot.
  - Disable unsupported merge for virtual snapshot.
  - Move code to remove virtual snapshot from tools to lib for lvm2app.
  - Fix possible race during daemon worker thread creation (lvmetad).
  - Fix possible deadlock while clearing lvmetad cache for full rescan.
  - Fix possible race while creating/destroying memory pools.
  - Recognise NVM Express devices in filter.
  - Fix failing metadata repair when lvmetad is used.
  - Fix incorrect memory handling when reading messages from lvmetad.
  - Fix locking in lvmetad when handling the PV which is gone.
  - Recognize new flag to skip udev scanning in udev rules and act appropriately.
  - Add support for flagging an LV to skip udev scanning during activation.
  - Improve message when unable to change discards setting on active thin pool.
  - Run full scan before vgrename operation to avoid any cache name collision.
  - Fix lvconvert when converting to a thin pool and thin LV at once.
  - Skip race errors when non-udev dmsetup build runs on udev-enabled system.
  - Skip error message when holders are not present in sysfs.
  - Use __linux__ instead of linux define to make libdevmapper.h C compliant.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.103-3
changelog:
  - Fix missing lvmetad scan for PVs found on MD partitions.
  - Respect DM_UDEV_DISABLE_OTHER_RULES_FLAG in lvmetad udev rules.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.104-1
changelog:
  - Workaround VG refresh race during autoactivation by retrying the refresh.
  - Handle failures in temporary mirror used when adding images to mirrors.
  - Fix and improve logic for implicitely exclusive activations.
  - Return success when LV cannot be activated because of volume_list filter.
  - Return proper error state for remote exclusive activation.
  - Fix clvmd message verification to not reject REMOTE flag. (2.02.100)
  - Compare equality of double values with DBL_EPSILON predefined constant.
  - Use additional gcc warning flags by default.
  - Add ignore_lvm_mirrors to config file to read/ignore labels on mirrors.
  - Use #ifdef __linux__ instead of linux throughout.
  - Consistently report on stderr when device is not found for dmsetup info.
  - Skip race errors when non-udev dmsetup build runs on udev-enabled system.
  - Skip error message when holders are not present in sysfs.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.105-1
changelog:
  - Fix thin LV flagging for udev to skip scanning only if the LV is wiped.
  - Replace use of xfs_check with xfs_repair in fsadm.
  - Mark lvm1 format metadata as FMT_OBSOLETE. Do not use it with lvmetad.
  - Invalidate cached VG struct after a PV in it gets orphaned. (2.02.87)
  - Mark pool format metadata as FMT_OBSOLETE.
  - Use major:minor in lvm2-pvscan@.service for proper global_filter application.
  - Syntax and spelling fixes in some man pages.
  - Dependency scan counts with snapshots and external origins.
  - Make sure VG extent size is always greater or equal to PV phys. block size.
  - Optimize double call of stat() for cached devices.
  - Enable support for thin provisioning for default configuration.
  - Disable online thin pool metadata resize for 1.9 kernel thin target.
  - Shortened code for initialization of raid segment types.
  - Test for remote exclusive activation after activation fails.
  - Support lvconvert --merge for thin snapshots.
  - Add support to read thin device id from table line entry.
  - Drop extra test for origin when testing merging origin in lv_refresh().
  - Extend lv_remove_single() to not print info about removed LV.
  - Replace open_count check with lv_check_not_in_use() for snapshot open test.
  - Add error messages with LV names for failing lv refresh.
  - Compile/link executables with new RELRO and PIE options (non-static builds).
  - Support per-object compilation cflags via CFLAGS_object.o.
  - Automatically detect support for compiler/linker options to use RELRO and PIE.
  - Add --splitsnapshot to lvconvert to separate out cow LV.
  - Reinstate origin reload to complete lvconvert -s with active LVs. (2.02.98)
  - Select only active volume groups if vgdisplay -A is used.
  - Add -p and LVM_LVMETAD_PID env var to lvmetad to change pid file.
  - Allow lvmetad to reuse stale socket.
  - Only unlink lvmetad socket on error if created by the same process.
  - Append missing newline to lvmetad missing socket path error message.
  - Add allocation/use_blkid_wiping to lvm.conf to enable blkid wiping.
  - Enable blkid_wiping by default if the blkid library is present.
  - Add configure --disable-blkid_wiping to disable libblkid signature detection.
  - Add -W/--wipesignatures lvcreate option to support wiping on new LVs.
  - Add allocation/wipe_signatures_when_zeroing_new_lvs to lvm.conf.
  - Do not fail the whole autoactivation if the VG refresh done before fails.
  - Do not connect to lvmetad on vg/lvchange --sysinit -aay and socket absent.
  - Use lv_check_not_in_use() when testing device in use before merging.
  - Check for failure of lvmcache_add_mda() when writing pv.
  - Check for failure of dev_get_size() when reporting device size.
  - Drop extra unneeded '/' when scanning sysfs directory.
  - Fix undef value if skipped clustered VG ignored for toollib PV seg. (2.02.103)
  - Support validation of VG/LV names in liblvm/python.
  - Allow creation of PVs with arguments to liblvm/python.
  - Ensure sufficient metadata copies retained in liblvm/python vgreduce.
  - Fix installation of profiles from conf subdir when not building in srcdir.
  - Show UUIDs for missing PVs in reports.
  - Add reporting of thin_id device id for thin volumes.
  - Fix reporting of empty numerical values for recently-added fields.
  - Revert activation of activated nodes if a node preload callback fails.
  - Avoid busy looping on CPU when dmeventd reads event DM_WAIT_RETRY.
  - Ensure global mutex is held when working with dmeventd thread.
  - Drop taking timeout mutex for un/registering dmeventd monitor.
  - Allow section names in config file data to be quoted strings.
  - Close fifos before exiting in dmeventd restart() error path.
  - Catch invalid use of string sort values when reporting numerical fields.
  - Require util-linux >= 2.24 for blkid wiping support (via device-mapper pkg).
  - Add BuildRequires: libblkid-devel to build with blkid wiping functionality.
  - Do not install /run and /run/lvm directory but only own them by lvm2 package.
    These dirs are controlled by systemd's tmpfiles.d/lvm2.conf configuration.
  - Consolidate file permissions for all packaged files.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.105-2
changelog:
  - Avoid exposing temporary devices when initializing thin pool volume.
  - Remove udev rule for multipath's PATH_FAILED event processing,
    multipath handles that properly in its own udev rules now.
  - Remove duplicate udev rule for cryptsetup temporary devices,
    cryptsetup handles that properly directly in its code.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.106-1
changelog:
  - Require latest device-mapper-persistent-data 0.3.2-1.
  - Fix ignored --dataalignment/dataalignmentoffset for pvcreate --restorefile.
  - Fix lost information about bootloader area when using lvmetad.
  - Don't require --major to be specified when using -My option on kernels > 2.4.
  - Add configure --disable-thin_check_needs_check to support old thin_check.
  - Use thin_check --clear-needs-check-flag by default.
  - Add lvmthin man page to section 7.
  - Ensure mapped device names are not too long in vg_validate and lvrename.
  - Ensure resume failure in lvrename results in command failure.
  - Add explicit error message when using lvdisplay -c -m.
  - Report error if superfluous argument (e.g. PV name) supplied to pvscan.
  - Fix error message for pvdisplay -c -m and add one for pvdisplay -c -s.
  - Use EINVALID_CMD_LINE correctly instead of ECMD_FAILED in vgimport/export.
  - Obtain list of known VGs from lvmetad for pvchange --all.
  - Add man page for lvm-dumpconfig to section 8.
  - Validate name for renamed sub LVs.
  - When lvrename fails on argument parsing return EINVALID_CMD_LINE.
  - Fix exit code regression in failing pvchange command (2.02.66).
  - Include 'lvm dumpconfig --type missing' and '--type diff' output to lvmdump.
  - Return failure when specifying negative size for pvresize.
  - Fix memory corruption in cmd context refresh if clvmd leaks opened device.
  - Reinitialise lvmcache properly on fork to fix premature polldaemon exit.
  - Add 'lvm dumpconfig --type diff' to show differences from defaults.
  - Fix swap signature detection for devices smaller then 2MB.
  - Resolve memory release order for clvmd shutdown.
  - Report error when lvm2 activation is released in critical_section.
  - Fix memory corruption when pvscan reports long pv names.
  - Do not report internal orphan VG names when reporting pvdisplay/pvscan.
  - Fix pvdisplay -c man page referencing KB instead of sectors.
  - Skip redundant synchronization calls on local clvmd.
  - Use correct PATH_MAX for locking dir path.
  - Do not check for backups when when its creation is disabled.
  - Don't allow --mergedconfig without --type current in dumpconfig. Fix memleak.
  - Make global/lvdisplay_shows_full_device_path lvm.conf setting profilable.
  - Make global/{units|si_unit_consistency|suffix} lvm.conf setting profilable.
  - Validate minimal chunk size for snapshot COW volume in lvconvert.
  - Disallow lvconvert of origin to snapshot COW volume.
  - Make report lvm.conf settings profilable.
  - Add existing report settings to lvm.conf.
  - Use VG read lock during 'pvscan --cache -aay' autoactivation.
  - Issue a VG refresh before autoactivation only if the PV has changed/is new.
  - Add flag to lvmetad protocol to indicate the PV scanned has changed/is new.
  - Also add vgname to lvmetad protocol when referencing VGs for PVs scanned.
  - Add man page for lvm2-activation-generator.
  - Don't print an error and accept empty value for global/thin_disabled_features.
  - Do not try to check empty pool with scheduled messages.
  - Fix return value in pool_has_message() when quering for any message.
  - Cleanup all client resources on clvmd exit.
  - Use BLKID_CFLAGS when compiling with blkid support.
  - Make lvm 'dumpconfig --type default' complete for it to be consumed by lvm.
  - Run pvscan --cache via systemd-run in udev if the PV label is detected lost.
  - Fix memleak when lvmetad discovers PV to appear on another device.
  - Fix calculation of maximum size of COW device for snapshot (2.02.99).
  - Do not allow stripe size to be bigger then extent size for lvresize.
  - Zero snapshot COW header when creating read-only snapshot.
  - Comment out config lines in dumpconfig output without default values defined.
  - Improve detection of clustered mirror support.
  - Enhance raid code with feature flags, for now checks for raid10.
  - Move parsing of VG metadata from vg_commit() back to vg_write() (2.02.99)
  - Avoid a PV label scan while in a critical section.
  - Create /dev/disk/by-id/lvm-pv-uuid-<PV_UUID> symlink for each PV via udev.
  - lvcreate computes RAID4/5/6 stripes if not given from # of allocatable PVs.
  - Fix merging of old snapshot into thin volume origin.
  - Use --ignoreskippedcluster in lvm2-monitor initscript/systemd unit.
  - Do not use VG read/write state for LV read/write state.
  - Use --ignoreskippedcluster in activation systemd units if use_lvmetad=0.
  - Allow approximate allocation when specifying size in percentage terms.
  - Add basic LVM support for cache[pool] segment types.
  - Use local exclusive activation for creation of raid in cluster.
  - Use correctly signed 64b constant when selecting raid volumes.
  - Remove ExecReload from lvmetad systemd unit: lvmetad -R undefined. (2.02.98)
  - Do not fork lvmetad if running under systemd.
  - Wipe DM_snapshot_cow signature without prompt in new LVs with blkid wiping.
  - Avoid exposing temporary devices when initializing raid metadata volumes.
  - Add internal tags command to display any tags defined on the host.
  - Prohibit use of external origin with size incompatible with thin pool.
  - Avoid trying to convert single to thin pool and volume at the same time.
  - Add support for partitions on ZFS zvol.
  - Fix unwanted drop of hold flocks on forked children.
  - Respect LVM_LVMETAD_PIDFILE env var for lvm command.
  - Fix test when checking target version for available thin features.
  - Detect thin feature external_origin_extend and limit extend when missing.
  - Issue error if libbblkid detects signature and fails to return offset/length.
  - Update autoconf config.guess/sub to 2014-01-01.
  - Online thin pool metadata resize requires 1.10 kernel thin pool target.
  - Check for sprintf error when building internal device path.
  - Check for sprintf error when creating path for dm control node.
  - When buffer for dm_get_library_version() is too small, return error code.
  - Always reinitialize _name_mangling_mode in dm_lib_init().
  - Stop timeout thread immediately when the last worker thread is finished.
  - Fix dmeventd logging with parallel wait event processing.
  - Reuse _node_send_messages() for validation of transaction_id in preload.
  - Transaction_id could be lower by one only when messages are prepared.
  - Wrap is_selinux_enabled() to be called just once.
  - Use correctly signed 64b constant when working with raid volumes.
  - Exit dmeventd with pidfile cleanup instead of raising SIGKILL on DIE request.
  - Add new DM_EVENT_GET_PARAMETERS request to dmeventd protocol.
  - Do not use systemd's reload for dmeventd restart, use dmeventd -R instead.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.106-2
changelog:
  - Require exact lvm2/device-mapper version among LVM2 subpackages
    so all of them are always updated synchronously within one update.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.107-1
changelog:
  - Add cmirror-standalone subpackage containing new lvm2-cmirrord.service
    systemd unit for standalone cmirrord daemon management without cluster
    resource manager involvement.
  - Add lvm2-cluster-standalone subpackage containing new lvm2-clvmd.service
    and lvm2-cluster-activation.service systemd unit for standalone clvmd
    daemon management without cluster resource manager involvement.
  - Add Requires: resource-agents for lvm2-cluster and cmirror subpackages.
    The resource-agents package provides "clvm" cluster resource to manage
    clvmd and cmirrord instances. This replaces obsolete clvmd and cmirrord
    initscripts.
  - Introduce LCK_ACTIVATION to avoid concurrent activation of basic LV types.
  - Fix open_count test for lvchange --refresh or mirrors and raids.
  - Update pvs,vgs,lvs and lvm man page for selection support.
  - Add -S/--select to lvm devtypes for report selection.
  - Add -S/--select to pvs,vgs,lvs and {pv,vg,lv}display -C for report selection.
  - Use dm_report_init_with_selection now, implicit "selected" field appears.
  - Make use of libdm's DM_REPORT_FIELD_TYPE{SIZE,PERCENT,STRING_LIST} for fields.
  - Support all-or-nothing pvmove --atomic.
  - Automatically add snapshot metadata size for -l %ORIGIN calculation.
  - When converting RAID origin to cache LV, properly rename sub-LVs.
  - Use RemoveOnStop for lvm2-lvmetad.socket systemd unit.
  - Add thin-generic configuration profile for generic thin settings.
  - Fix crash when reporting empty labels on pvs.
  - Use retry_deactivation also when cleaning orphan devices.
  - Wait for client threads when shutting down lvmetad.
  - Remove PV from cache on pvremove.
  - Avoid repeatedly reporting of failure to connect to lvmetad.
  - Introduce MDA_FAILED to permit metadata updates even if some mdas are missing.
  - Prompt when setting the VG cluster attr if the cluster is not setup.
  - Allow --yes to skip prompt in vgextend (worked only with -f).
  - Don't use name mangling for LVM - it never uses dm names with wrong char set.
  - Remove default.profile and add {command,metadata}_profile_template.profile.
  - Use proper umask for systemd units generated by lvm2-activation-generator.
  - Check for failing mirror_remove_missing() function.
  - Prompt before converting volumes to thin pool and thin pool metadata.
  - Add dumpconfig --type profilable-{metadata,command} to select profile type.
  - Exit immediately with error if command profile is found invalid.
  - Separate --profile cmd line arg into --commandprofile and --metadataprofile.
  - Strictly separate command profiles and per-VG/LV profiles referenced in mda.
  - Fix dumpconfig --type diff when run as second and later cmd in lvm shell.
  - Fix wrong profile reuse from previous run if another cmd is run in lvm shell.
  - Move cache description from lvm(8) to new lvmcache(7) man page.
  - Display skipped prompt in silent mode.
  - Make reporting commands show help about possible sort keys on '-O help'.
  - Add metadata_percent to lvs_cols.
  - Take account of parity areas with alloc anywhere in _calc_required_extents.
  - Use proper uint64 casting for calculation of cache metadata size.
  - Better support for nesting of blocking signals.
  - Use only sigaction handler and drop duplicate signal handler.
  - Separate signal handling and flock code out into lib/misc.
  - Don't start dmeventd checking seg_monitor and monitoring is disabled.
  - Catch CTRL-c during pvremove prompts.
  - Show correct availability status for snapshot origin in lvscan.
  - Move segment thin pool/volume info into segment display 'lvdisplay --maps'.
  - Display thin pool usage even when just thin volume is available.
  - Display monitoring status for monitorable segments in 'lvdisplay --maps'.
  - Display virtual extents for virtual LVs in 'lvdisplay --maps'.
  - Make vgsplit fail cleanly when not all PVs are specified for RAID 4/5/6.
  - Make vgsplit work on mirrors with logs that share PVs with images.
  - Use devices/ignore_suspended_devices=0 by default if not defined in lvm.conf.
  - Use proper libmem mempool for allocation of unknown segment name.
  - Add --readonly to reporting and display tools for lock-free metadata access.
  - Add locking_type 5 for dummy locking for tools that do not need any locks.
  - Fix _recover_vg() error path when lock conversion fails.
  - Use X for LV attributes that are unknown when activation disabled.
  - Only output lvdisplay 'LV Status' field when activation is enabled.
  - Use lvmetad_used() in pvscan instead of config_tree.
  - Configure --enable-udev-systemd-background-jobs if not disabled explicitly.
  - Add lvmdump -s to collect system info and context (currently systemd only).
  - Refactor allocation code to make A_POSITIONAL_FILL explicit.
  - Use thread-safe ctime_r() for clvmd debug logging.
  - Skip adding replies to already finished reply thread.
  - Use mutex to check number of replies in request_timed_out() in clvmd.
  - Drop usage of extra reply_mutex for localsock in clvmd.
  - Protect manipulation with finished flag with mutex in clvmd.
  - Shift mutex creation and destroy for localsock in clvmd to correct place.
  - Fix usage of --test option in clvmd.
  - Skip more libraries to be mlocked in memory.
  - Remove LOCKED flag for pvmove replaced with error target.
  - Return invalid command when specifying negative polling interval.
  - Make "help" and "?" reporting fields implicit.
  - Recognize implicit "selected" field if using dm_report_init_with_selection.
  - Add support for implicit reporting fields which are predefined in libdm.
  - Add DM_REPORT_FIELD_TYPE_PERCENT: separate number and percent fields.
  - Add dm_percent_range_t,dm_percent_to_float,dm_make_percent to libdm for reuse.
  - Add dm_report_reserved_value to libdevmapper for reserved value definition.
  - Also display field types when listing all fields in selection help.
  - Recognize "help" keyword in selection string to show brief help for selection.
  - Always order items reported as string list field lexicographically.
  - Add dm_report_field_string_list to libdevmapper for direct string list report.
  - Add DM_REPORT_FIELD_TYPE_STRING_LIST: separate string and string list fields.
  - Add dm_str_list to libdevmapper for string list type definition and its reuse.
  - Add dmsetup -S/--select to define selection criteria for dmsetup reports.
  - Add dm_report_init_with_selection to intialize report with selection criteria.
  - Add DM_REPORT_FIELD_TYPE_SIZE: separate number and size reporting fields.
  - Use RemoveOnStop for dm-event.socket systemd unit.
  - Document env var 'DM_DEFAULT_NAME_MANGLING_MODE' in dmsetup man page.
  - Warn user about incorrect use of cookie with 'dmsetup remove --force'.
  - Also recognize 'help'/'?' as reserved sort key name to show help.
  - Add dm_units_to_factor for size unit parsing.
  - Increase bitset size for minors for thin dmeventd plugin.


author: Alasdair Kergon <agk@redhat.com> - 2.02.108-1
changelog:
  - Remove an erroneous duplicate const from libdevmapper.h. (2.02.107)
  - Add lvscan --cache which re-scans constituents of a particular LV.
  - Make dmeventd's RAID plugin re-scan failed PVs when lvmetad is in use.
  - Improve code sharing for lvconvert and lvcreate and pools (cache & thin).
  - Improve lvconvert --merge validation.
  - Improve lvconvert --splitsnapshot validation.
  - Add report/list_item_separator lvm.conf option.
  - Add lv_active_{locally,remotely,exclusively} LV reporting fields.
  - Enhance lvconvert thin, thinpool, cache and cachepool command line support.
  - Display 'C' only for cache and cache-pool target types in lvs.
  - Prompt for confirmation before change LV into a snapshot exception store.
  - Return proper error codes for some failing lvconvert funtions.
  - Add initial code to use cache tools (cache_check|dump|repair|restore).
  - Support lvdisplay --maps for raid.
  - Add --activationmode degraded to activate degraded raid volumes by default.
  - Add separate lv_active_{locally,remotely,exclusively} LV reporting fields.
  - Recognize "auto"/"unmanaged" values in selection for appropriate fields only.
  - Add report/binary_values_as_numeric lvm.conf option for binary values as 0/1.
  - Add --binary arg to pvs,vgs,lvs and {pv,vg,lv}display -C for 0/1 on reports.
  - Add separate reporting fields for each each {pv,vg,lv}_attr bit.
  - Separate LV device status reporting fields out of LV fields.
  - Fix regression causing PVs not in VGs to be marked as allocatable (2.02.59).
  - Fix VG component of lvid in vgsplit/vgmerge and check in vg_validate.
  - Add lv_full_name, lv_parent and lv_dm_path fields to reports.
  - Change lv_path field to suppress devices that never appear in /dev/vg.
  - Postpone thin pool lvconvert prompts (2.02.107).
  - Require --yes option to skip prompt to lvconvert thin pool chunksize.
  - Support lvremove -ff to remove thin volumes from broken thin pools.
  - Require --yes to skip raid repair prompt.
  - Change makefile %.d generation to handle filename changes without make clean.
  - Fix use of buildir in make pofile.
  - Enhance private volumes UUIDs with suffixed for easier detection.
  - Do not use reserved _[tc]meta volumes for temporary LVs.
  - Leave backup pool metadata with _meta%d suffix instead of reserved _tmeta%d.
  - Allow RAID repair to reuse PVs from same image that suffered a failure.
  - New RAID images now avoid allocation on any PVs in the same parent RAID LV.
  - Always reevaluate filters just before creating PV.
  - Fix dm_report_field_string_list to handle delimiter with multiple chars.
  - Add dm_report_field_reserved_value for per-field reserved value definition.


author: Alasdair Kergon <agk@redhat.com> - 2.02.109-1
changelog:
  - Allow approximate allocation with +%FREE in lvextend.
  - Fix a segfault in lvscan --cache when devices were already missing. (2.02.108)
  - Display actual size changed when resizing LV.
  - Remove possible spurious "not found" message on PV create before wiping.
  - Handle upgrade from 2.02.105 when an LV now gaining a uuid suffix is active.
  - Remove lv_volume_type field from reports. (2.02.108)
  - Fix incorrect persistent .cache after vgcreate with PV creation. (2.02.108)
  - Add dm_tree_set_optional_uuid_suffixes to libdevmapper to handle upgrades.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.110-1
changelog:
  - Fix manipulation with thin-pools which are excluded via volume_list.
  - Support lv/vgremove -ff to remove thin vols from broken/inactive thin pools.
  - Fix typo breaking configure --with-lvm1=shared.
  - Modify lvresize code to handle raid/mirrors and physical extents.
  - Don't allow pvcreate to proceed if scanning or filtering fails.
  - Cleanly error when creating RAID with stripe size < PAGE_SIZE.
  - Print name of LV which on activation triggers delayed snapshot merge.
  - Add lv_layout and lv_role LV reporting fields.
  - Properly display lvs lv_attr volume type and target type bit for cache origin.
  - Fix pvcreate_check() to update cache correctly after signature wiping.
  - Fix primary device lookup failure for partition when processing mpath filter.
  - If LV inactive and non-clustered, do not issue "Cannot deactivate" on -aln.
  - Remove spurious "Skipping mirror LV" message on pvmove of clustered mirror.
  - Improve libdevmapper-event select() error handling.
  - Add extra check for matching transation_id after message submitting.
  - Add dm_report_field_string_list_unsorted for str. list report without sorting.
  - Support --deferred with dmsetup remove to defer removal of open devices.
  - Update dm-ioctl.h to include DM_DEFERRED_REMOVE flag.
  - Add support for selection to match string list subset, recognize { } operator.
  - Fix string list selection with '[value]' to not match list that's superset.
  - Fix string list selection to match whole words only, not prefixes.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.111-1
changelog:
  - Pass properly sized char buffers for sscanf when initializing clvmd.
  - Reinstate nosync logic when extending mirror. (2.02.110)
  - Fix total area extent calculation when allocating cache pool. (2.02.110)
  - Restore proper buffer size for parsing mountinfo line (1.02.89)


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.112-1
changelog:
  - Add cache_{read,write}_{hits,misses} reporting fields.
  - Add cache_{total,used,dirty}_blocks reporting fields.
  - Add _corig as reserved suffix.
  - Reduce number of VG writes and commits when creating spare volumes.
  - When remove_layer_from_lv() removes layer, restore subLV names.
  - Cache-pool in use becomes invisible LV.
  - Don't prompt for removal of _pmspare in VG without pool metadata LV.
  - Deactivation of snapshot origin detects and deactivates left-over snapshots.
  - Properly report error when taking snapshot of any cache type LV.
  - Add basic thread debugging messages to dmeventd.
  - Include threads being shutdown in dmeventd device registration responses.
  - Inital support for external users of thin pools based on transaction_id.
  - Report some basic percentage info for cache pools.
  - Introduce size_mb_arg_with_percent() for advanced size arg reading.
  - Add extra support for '.' as decimal point in size args.
  - Add configure parameters for default segment type choices.
  - Add global/sparse_segtype_default setting to use thin for --type sparse.
  - Update and correct lvcreate and lvcovert man pages.
  - Mark pools and snapshots as unzeroable volumes.
  - Check for zeroing of volume after segment type is fully detected.
  - Better support for persistent major and minor options with lvcreate.
  - Refactor lvcreate towards more complete validation of all supported options.
  - Support lvcreate --type linear.
  - Improve _should_wipe_lv() to warn with message.
  - Inform about temporarily created volumes only in verbose mode.
  - Better support for --test mode with pool creation.
  - Query lock holding LV when replacing and converting raid volumes.
  - Add extra validate for locked lv within validate_lv_cache_create().
  - Add internal lvseg_name() function.
  - Skip use of lock files for virtual internal VG names.
  - Fix selection on {vg,lv}_permissions fields to properly match selection criteria.
  - Fix lv_permissions reporting to display read-only{-override} instead of blank.
  - Fix liblvm2cmd and lvm shell to respect quotes around args in cmd line string.
  - Permit extent sizes > 128KB that are not power of 2 with lvm2 format.
  - Remove workaround for lvm2-monitor.service hang on stop if lvmetad stopped.
  - Change vgremove to use process_each_lv_in_vg.
  - Allow lvconvert --repair and --splitmirrors on internal LVs.
  - Introduce WARN_ flags to control some metadata warning messages.
  - Use process_each_pv in vgreduce.
  - Refactor process_each_pv in toollib.
  - Introduce single validation routine for pool chunk size.
  - Support --yes like --force in vg/lvremove to skip y|n prompt.
  - Support --yes with lvconvert --splitsnapshot.
  - Fix detection of unsupported thin external lvconversions.
  - Fix detection of unsupported cache and thin pool lvconversions.
  - Fix detection of unsupported lvconversion of cache to snapshot.
  - Improve code for creation of cache and cache pool volumes.
  - Check cluster-wide (not local) active status before removing LV.
  - Properly check if activation of removed cached LV really activated.
  - lvremove cached LV removes cachepool (keep with lvconvert --splitcache).
  - Always remove spare LV with last removed pool volume.
  - Support lvconvert --splitcache and --uncache of cached LV.
  - Option --cache has also shortcut -H (i.e. lvcreate -H).
  - Refactor lvcreate code and better preserve --type argument.
  - Refactor filter processing around lvmetad.
  - Refactor process_each_lv in toollib.
  - Refactor process_each_vg in toollib.
  - Pools cannot be used as external origin.
  - Use lv_update_and_reload() for snapshot reload.
  - Don't print message in adjusted_mirror_region_size() in activation.
  - Improve lv_update_and_reload() to find out proper lock holding LV.
  - Improve search of LV in lv_ondisk().
  - Do not scan sysfs in lv_check_not_in_use() when device is closed.
  - Backup final metadata after resync of mirror/raid.
  - Unify handling of --persistent option for lvcreate and lvchange.
  - Validate major and minor numbers stored in metadata.
  - Use -fPIE when linking -pie executables.
  - Support DEBUG_MEMLOCK to trap unsupported mmap usage.
  - Enable cache segment type by default.
  - Ensure only supported volume types are used with cache segments.
  - Fix inablility to specify cachemode when 'lvconvert'ing to cache-pool.
  - Grab cluster lock for active LVs when setting clustered attribute.
  - Use va_copy to properly pass va_list through functions.
  - Add function to detect rotational devices.
  - Review internal checks for mirror/raid/pvmove volumes.
  - Track mirror segment type with separate MIRROR flag.
  - Fix cmirror endian conversions.
  - Introduce lv_is_pvmove/locked/converting/merging macros.
  - Avoid leaving linear logical volume when thin pool creation fails.
  - Don't leak alloc_handle on raid target error path.
  - Properly validate raid leg names.
  - Archive metadata before starting their modification in raid target.
  - Add missing vg_revert() in suspend_lv() raid and snapshot error path.
  - Add missing backup of lvm2 metadata after some raid modifications.
  - Use vg memory pool for extent allocation.
  - Add allocation/physical_extent_size config option for default PE size of VGs.
  - Demote an error to a warning when devices known to lvmetad are filtered out.
  - Re-order filter evaluation, making component filters global.
  - Fix logic that checks for full scan before iterating through devices.
  - Introduce common code to modify metadata and reload updated LV.
  - Fix rename of active snapshot volume in cluster.
  - Make sure shared libraries are built with RELRO option.
  - Update cache creation and dm_config_node to pass policy.
  - Allow activation of any thin-pool if transaction_id supplied is 0.
  - Don't print uninitialized stack bytes when non-root uses dm_check_version().
  - Fix selection criteria to not match reserved values when using >, <, >=, <.
  - Add DM_LIST_HEAD_INIT macro to libdevmapper.h.
  - Fix dm_is_dm_major to not issue error about missing /proc lines for dm module.


author: Alasdair Kergon <agk@redhat.com> - 2.02.113-1
changelog:
  - Add --cachepolicy and --cachesettings options to lvchange.
  - Validate that converted volume and specified pool volume differ in lvconvert.
  - Fix regression in vgscan --mknodes usage (2.02.112).
  - Default to configure --enable-udev-systemd-background-jobs for systemd>=205.
  - Fix ignore_vg() to properly react on various vg_read errors (2.02.112).
  - Failed recovery returns FAILED_RECOVERY status flag for vg_read().
  - Exit with non-zero status code when pvck encounters a problem.
  - Fix clean_tree after activation/resume for cache target (2.02.112).
  - Fix memory corruption with sorting empty string lists (1.02.86).
  - Fix man dmsetup.8 syntax warning of groff.
  - Accept unquoted strings and / in place of {} when parsing configs.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.113-2
changelog:
  - Fix regression when parsing /dev/mapper dir (2.02.112).
  - Fix missing rounding to 64KB when estimating optimal thin pool chunk size.
  - Fix typo in clvmd initscript causing CLVMD_STOP_TIMEOUT variable to be ignored.
  - Fix size in pvresize "Resizing to ..." verbose msg to show proper result size.


author: Alasdair Kergon <agk@redhat.com> - 2.02.114-3
changelog:
  - Avoid file descriptor leak in clients that open repeated lvmetad connections.
  - Add --cachepolicy and --cachesettings to lvcreate.
  - Fix regression when parsing /dev/mapper dir (2.02.112).
  - Fix missing rounding to 64KB when estimating optimal thin pool chunk size.
  - Fix typo in clvmd initscript causing CLVMD_STOP_TIMEOUT var to be ignored.
  - Fix size in pvresize "Resizing to ..." verbose msg to show proper result size.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.115-1
changelog:
  - Report segment types without monitoring support as undefined.
  - Support lvchange --errorwhenfull for thin pools.
  - Improve the processing and reporting of duplicate PVs.
  - Report lv_health_status and health attribute also for thin pool.
  - Add lv_when_full reporting field.
  - Add support for lvcreate --errorwhenfull y|n for thin pools.
  - Fix lvconvert --repair to honour resilience requirement for segmented RAID LV.
  - Filter out partitioned device-mapper devices as unsuitable for use as PVs.
  - Also notify lvmetad about filtered device if using pvscan --cache DevicePath.
  - Use LVM's own selection instead of awk expressions in clvmd startup scripts.
  - Do not filter out snapshot origin LVs as unusable devices for an LVM stack.
  - Fix incorrect rimage names when converting from mirror to raid1 LV (2.02.112).
  - Introduce pvremove_many to avoid excessive metadata re-reading and messages.
  - Check for cmirror availability during cluster mirror creation and activation.
  - Add cache_policy and cache_settings reporting fields.
  - Add missing recognition for --binary option with {pv,vg,lv}display -C.
  - Fix vgimportclone to notify lvmetad about changes done if lvmetad is used.
  - Fix vgimportclone to properly override config if it is missing in lvm.conf.
  - Fix automatic use of configure --enable-udev-systemd-background-jobs.
  - Correctly rename active split LV with -splitmirrors for raid1.
  - Add report/compact_output to lvm.conf to enable/disable compact report output.
  - Still restrict mirror region size to power of 2 when VG extent size is not.
  - Reduce severity of ioctl error message when dmeventd waitevent is interrupted.
  - Report 'unknown version' when incompatible version numbers were not obtained.
  - Report more info from thin pool status (out of data, metadata-ro, fail).
  - Support error_if_no_space for thin pool target.
  - Fix segfault while using selection with regex and unbuffered reporting.
  - Add dm_report_compact_fields to remove empty fields from report output.
  - Remove unimplemented dm_report_set_output_selection from libdevmapper.h.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.115-2
changelog:
  - Set default cache_mode to writehrough when missing in metadata.
  - Add BuildRequires: device-mapper-persistent-data
    for proper thin and cache tool configuration.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.116-3
changelog:
  - Deactivate unused thin pools activated with lvm2 pre-2.02.112 versions.
  - Check lock holding LV when lvconverting stacked raid LV in cluster.
  - Support udev external dev info for filters: PV min size, mpath, md, partition.
  - Add fw_raid_component_detection lvm.conf option to enable FW raid detection.
  - Add devices/external_device_info_source lvm.conf option ("none" by default).
  - Scan pools in for_each_sub_lv() and add for_each_sub_lv_except_pools().
  - Fix lvm2app lvm_lv_get_property return value for fields with info/status ioctl.
  - Fix lvm2app regression in lvm_lv_get_attr causing unknown values (2.02.115).
  - Preserve chunk size with repair and metadata swap of a thin pool.
  - Fix raid --splitmirror 1 functionality (2.02.112).
  - Fix tree preload to handle splitting raid images.
  - Do not support unpartitioned DASD devices.
  - Improve config validation to check if setting with string value can be empty.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.118-1
changelog:
  - Fix LV processing with selection to always do the selection on initial state.
  - Store metadata size + checksum in lvmcache and add struct lvmcache_vgsummary.
  - Remove inaccessible clustered PVs from 'pvs -a'.
  - Don't invalidate cached orphan information while global lock is held.
  - Avoid rescan of all devices when requested pvscan for removed device.
  - Measure configuration timestamps with nanoseconds when available.
  - Disable lvchange of major and minor of pool LVs.
  - Fix pvscan --cache to not scan and read ignored metadata areas on PVs.
  - Add After=iscsi-shutdown.service to blk-availability.service systemd unit.
  - Disallow vgconvert from changing metadata format when lvmetad is used.
  - Don't do a full read of VG when creating a new VG with an existing name.
  - Reduce amount of VG metadata parsing when looking for vgname on a PV.
  - Avoid reparsing same metadata when reading same metadata from multiple PVs.
  - Save extra device open/close when scanning device for size.
  - Fix seg_monitor field to report status also for mirrors and thick snapshots.
  - Replace LVM_WRITE with LVM_WRITE_LOCKED flags in metadata if system ID is set.
  - Preserve original format type field when processing backup files.
  - Implement status action for lvm2-monitor initscript to display monitored LVs.
  - Allow lvchange -p to change kernel state only if metadata state differs.
  - Fix incorrect persistent .cache after report with label fields only (2.02.106).
  - Reinstate PV tag recognition for pvs if reporting label fields only (2.02.105).
  - Rescan devices before vgimport with lvmetad so exported VG is seen.
  - Fix hang by adjusting cluster mirror regionsize, avoiding CPG msg limit.
  - Do not crash when --cachepolicy is given without --cachesettings.
  - Add NEEDS_FOREIGN_VGS flag to vgimport so --foreign is always supplied.
  - Add --foreign to the 6 display and reporting tools and vgcfgbackup.
  - Install /etc/lvm/lvmlocal.conf template with local section for systemid.
  - Record creation_host_system_id in lvm2 metadata (never set yet).
  - Reinstate recursive config file tag section processing. (2.02.99)
  - Add 'lvm systemid' to display the current system ID (never set yet).
  - Fix configure to properly recognize --with-default-raid10-segtype option.
  - Do not refresh filters/rescan if no signature is wiped during pvcreate.
  - Enforce none external dev info for wiping during pvcreate to avoid races.
  - Add global/system_id_source and system_id_file to lvm.conf (disabled).
  - Add support for VG system_id to control host access to VGs.
  - Update vgextend to use process_each_vg.
  - Add --ignoreskippedcluster to pvchange.
  - Allow pvchange to modify several properties at once.
  - Update pvchange to use process_each_pv.
  - Fix pvs -a used with lvmetad to filter out devices unsuitable for PVs.
  - Fix selection to recognize units for ba_start, vg_free and seg_start fields.
  - Add support for -S/--select to vgexport and vgimport.
  - Add support for -S/--select to vgdisplay, lvdisplay and pvdisplay without -C.
  - Add support for -S/--select to vgremove and lvremove.
  - Add support for -S/--select to vgchange,lvchange and pvchange.
  - Add infrastructure to support selection for non-reporting tools.
  - Add LVM_COMMAND_PROFILE env var to set default command profile name to use.
  - Set CLOEXEC flag on file descriptors originating in libdaemon.
  - Add dm_report_object_is_selected for generalized interface for report/select.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.119-1
changelog:
  - New lvm2-python3-libs subpackage to provide Python 3 bindings for LVM2.
  - New LVM_LOG_FILE_EPOCH, LVM_EXPECTED_EXIT_STATUS env vars. Man page to follow.
  - Remove detailed content from lvm.conf man page: use lvmconfig instead.
  - Generate complete config files with lvmconfig or 'make generate'.
  - Also display info on deprecated config with lvmconfig --withcomments.
  - Display version since which config is deprecated in lvmconfig --withversions.
  - Add --showdeprecated to lvmconfig to also display deprecated settings.
  - Hide deprecated settings in lvmconfig output for all types but current,diff.
  - Introduce support for exit on idle feature in libdaemon
  - Add --showunsupported to lvmconfig to also display unsupported settings.
  - Display unsupported settings for lvmconfig --type current,diff only by default
  - Honour lvmconfig --ignoreunsupported and --ignoreadvanced for all --type.
  - Make python bindings usable with python3 (and compatible with 2.6 & 2.7).
  - Add lvmconfig -l|--list as shortcut for lvmconfig --type list --withsummary.
  - Add lvmconfig --type list to display plain list of configuration settings.
  - Introduce lvmconfig as the preferred form of 'lvm dumpconfig'.
  - Add lv_ancestors and lv_descendants reporting fields.
  - Add --ignorelocal option to dumpconfig to ignore the local section.
  - Close connection to lvmetad after fork.
  - Make lvchange able to resume background pvmove polling again.
  - Split pvmove update metadata fn in an initial one and a subsequent one.
  - Refactor shared pvmove and lvconvert code into new _poll files.
  - Add --unconfigured option to dumpconfig to print strings unconfigured.
  - Add --withsummary option to dumpconfig to print first line - summary comment.
  - Use number of device holders to help choose between duplicate PVs.
  - Try to make lvmetad and non-lvmetad duplicate PV handling as similar as poss.
  - Issue warnings about duplicate PVs discovered by lvmetad.
  - Track alternative devices with matching PVIDs in lvmetad.
  - Check for lvm binary in blkdeactivate and skip LVM processing if not present.
  - Add --enable-halvm and --disable-halvm options to lvmconf script.
  - Add --services, --mirrorservice and --startstopservices option to lvmconf.
  - Use proper default value of global/use_lvmetad when processing lvmconf script.
  - Respect allocation/cling_tag_list during intial contiguous allocation.
  - Make changes persist with python addTag/removeTag.
  - Set correct vgid when updating cache when writing PV metadata.
  - More efficient clvmd singlenode locking emulation.
  - Reject lvcreate -m with raid4/5/6 to avoid unexpected layout.
  - Don't skip invalidation of cached orphans if vg write lck is held (2.02.118).
  - Log relevant PV tags when using cling allocation.
  - Fix selection to not match if using reserved value in criteria with >,<,>=,<.
  - Fix selection to not match reserved values for size fields if using >,<,>=,<.
  - Include uuid or device number in log message after ioctl failure.
  - Add DM_INTERNAL_SUSPEND_FLAG to dm-ioctl.h.
  - Move blkdeactivate script from lvm2 package to device-mapper subpackage.
  - Install blkdeactivate script and its man page with make install_device-mapper.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.120-1
changelog:
  - Enable and use lvmpolld - the LVM polling daemon by default.
  - Add Requires: fedora-release>=23-0.13 for lvmpolld to be enabled by default.
  - Make various adjustments to Makefile compilation flags.
  - Add lvmpolld debug message class.
  - Add lvmpolld client mode for querying running server instance for status info.
  - Fix some libdaemon socket creation and reuse error paths.
  - Daemons (libdaemon) support exit on idle also in non-systemd environment.
  - Provide make dist and make rpm targets
  - Configure lvm.conf for use_lvmetad and use_lvmpolld.
  - Add lvpoll for cmdline communication with lvmpolld.
  - Add lvmpolld acting as a free-standing version of polldaemon.
  - Avoid repeated identical lvmetad VG lookups in commands processing all VGs. 
  - Handle switches to alternative duplicate PVs efficiently with lvmetad.
  - Properly validate PV size for pvcreate --restorefile.
  - Fix check if pvcreate wiped device (2.02.117).
  - Fix storing of vgid when caching metadata (2.02.118).
  - Fix recursive lvm-config man page. (2.02.119)
  - Refactor polldaemon interfaces to poll every operation by VG/LV couple
  - Skip wait after testing in _wait_for_single_lv when polling finished
  - Return 'None' in python for empty string properties instead of crashing.
  - Distinguish signed numerical property type in reports for lvm2app library.
  - Reread raid completion status immediately when progress appears to be zero.
  - lvm2app closes locking on lvm_quit().
  - Configure detects /run or /var/run.
  - Add missing newline in clvmd --help output.
  - New dm_task_get_info(DM_1_02_97) supports internal_suspend state.
  - New symbols are versioned and comes with versioned symbol name (DM_1_02_97).


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.122-1
changelog:
  - Flush stdout before printing to stderr.
  - Use pre-allocated buffer for printed LV names in display_lvname.
  - Support thins with size of external origin unaligned with thin pool chunk.
  - Allow extension of reduced thin volumes with external origins.
  - Consider snapshot and origin LV as unusable if component devices suspended.
  - Fix lvmconfig segfault on settings with undefined default value (2.02.120).
  - Add explicit 's' (shared) LV activation mode.
  - Ignore hyphens in long options names (i.e. --long-option == --longoption).
  - Distinguish between on-disk and lvmetad versions of text metadata.
  - Remove DL_LIBS from Makefiles for daemons that don't need them.
  - Zero errno in before strtoul call in dmsetup if tested after the call.
  - Zero errno in before strtoul call in lvmpolld.
  - Fix a segfault in pvscan --cache --background command.
  - Fix test for AREA_PV when checking for failed mirrors.
  - Do not use --sysinit in lvm2-activation{-early,-net}.service if lvmpolld used.
  - Maintain outdated PV info in lvmetad till all old metadata is gone from disk.
  - Do not fail polling when poll LV not found (already finished or removed).
  - Replace poll_get_copy_vg/lv fns with vg_read() and find_lv() in polldaemon.
  - Close all device fds only in before sleep call in polldaemon.
  - Simplify Makefile targets that generate exported symbols.
  - Move various -D settings from Makefiles to configure.h.
  - New dm_tree_node_set_thin_pool_read_only(DM_1_02_99) for read-only thin pool.
  - Enhance error message when thin-pool message fails.
  - Fix dmeventd logging to avoid threaded use of static variable.
  - Remove redundant dmeventd SIGALRM coded.
  - Add dm_task_get_errno() to return any unexpected errno from a dm ioctl call.
  - Use copy of errno made after each dm ioctl call in case errno changes later.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.123-1
changelog:
  - Add report/time_format lvm.conf option to define time format for report.
  - Fix makefile shell compare == when building lvmetad lvmpolld (2.02.120).
  - Add --type full to lvmconfig for full configuration tree view.
  - Add undocumented environment variables to lvm man page. (2.02.119)
  - Add device synchronization point before activating a new snapshot.
  - Add --withspaces to lvmconfig to add spaces in output for better readability.
  - Add custom main function to libdaemon.
  - Use lvmetad to track out-of-date metadata discovered.
  - Fix makefile shell compare == when building lvmetad lvmpolld (2.02.120).
  - Add --type full to lvmconfig for full configuration tree view.
  - Add undocumented environment variables to lvm man page. (2.02.119)
  - Add device synchronization point before activating a new snapshot.
  - Add --withspaces to lvmconfig to add spaces in output for better readability.
  - Add custom main function to libdaemon.
  - Use lvmetad to track out-of-date metadata discovered.
  - Add since, after, until and before time operators to be used in selection.
  - Add support for time in reports and selection: DM_REPORT_FIELD_TYPE_TIME.
  - Support report reserved value ranges: DM_REPORT_FIELD_RESERVED_VALUE_RANGE.
  - Support report reserved value names: DM_REPORT_FIELD_RESERVED_VALUE_NAMED.
  - Add DM_CONFIG_VALUE_FMT_{INT_OCTAL,STRING_NO_QUOTES} config value format flag.
  - Add DM_CONFIG_VALUE_FMT_COMMON_{ARRAY,EXTRA_SPACE} config value format flag.
  - Add dm_config_value_{get,set}_format_flags to get and set config value format.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.124-1
changelog:
  - Move sending thin pool messages from resume to suspend phase.
  - Report warning when pool is overprovisioned and not auto resized.
  - Recognize free-form date/time values for lv_time field in selection criteria.
  - Added experimental lvmlockd with configure --enable-lvmlockd.
  - Fix regression in select to match string fields if using synonyms (2.02.123).
  - Fix regression when printing more lv names via display_lvname (2.02.122).
  - Add missing error logging to unlock_vg and sync_local_dev_names callers.
  - Add experimental support to passing messages in suspend tree.
  - Add dm_report_value_cache_{set,get} to support caching during report/select.
  - Add dm_report_reserved_handler to handle report reserved value actions.
  - Support dynamic value in select: DM_REPORT_FIELD_RESERVED_VALUE_DYNAMIC_VALUE.
  - Support fuzzy names in select: DM_REPORT_FIELD_RESERVED_VALUE_FUZZY_NAMES.
  - Thin pool trace messages show a device name and major:minor.
  - Add new lvm2-lockd subpackage with lvmlockd daemon.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.125-1
changelog:
  - Fix getline memory usage in lvmpolld.
  - Add support --clear-needs-check-flag for cache_check of cache pool metadata.
  - Add lvmetactl for developer use only.
  - Rename global/lock_retries to lvmlockd_retries.
  - Replace --enable-lvmlockd by --enable-lockd-sanlock and --enable-lockd-dlm.
  - Include tool.h for default non-library use.
  - Introduce format macros with embedded % such as FMTu64.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.125-2
changelog:
  - Add Requires: system-release>=23 for lvmpolld to be enabled by default
    instead of original Requires: fedora-release which may break installations
    in environments where fedora-release is not available.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.126-2
changelog:
  - Fix long option hyphen removal. (2.02.122)
  - Fix clvmd freeze if client disappears without first releasing its locks.
  - Fix lvconvert segfaults while performing snapshots merge.
  - Ignore errors during detection if use_blkid_wiping=1 and --force is used.
  - Recognise DM_ABORT_ON_INTERNAL_ERRORS env var override in lvm logging fn.
  - Fix alloc segfault when extending LV with fewer stripes than in first seg.
  - Fix handling of cache policy name.
  - Set cache policy before with the first lvm2 cache pool metadata commit.
  - Fix detection of thin-pool overprovisioning (2.02.124).
  - Fix lvmpolld segfaults on 32 bit architectures.
  - Add lvmlockd lock_args validation to vg_validate.
  - Fix ignored --startstopservices option if running lvmconf with systemd.
  - Hide sanlock LVs when processing LVs in VG unless named or --all used.
  - Introduce libdevmapper wrappers for all malloc-related functions.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.127-1
changelog:
  - Do not init filters, locking, lvmetad, lvmpolld if command doesn't use it.
  - Order fields in struct cmd_context more logically.
  - Add lock_type to lvmcache VG summary and info structs.
  - Fix regression in cache causing some PVs to bypass filters (2.02.105).
  - Make configure --enable-realtime the default now. 
  - Add dmstats.8 man page
  - Add dmstats --segments switch to create one region per device segment.
  - Add dmstats --regionid, --allregions to specify a single / all stats regions.
  - Add dmstats --allprograms for stats commands that filter by program ID.
  - Add dmstats --auxdata and --programid args to specify aux data and program ID.
  - Add report stats sub-command to provide repeating stats reports.
  - Add clear, delete, list, and print stats sub-commands.
  - Add create stats sub-command and --start, --length, --areas and --areasize.
  - Recognize 'dmstats' as an alias for 'dmsetup stats' when run with this name.
  - Add a 'stats' command to dmsetup to configure, manage and report stats data.
  - Add statistics fields to dmsetup -o.
  - Add libdm-stats library to allow management of device-mapper statistics.
  - Add --nosuffix to suppress dmsetup unit suffixes in report output.
  - Add --units to control dmsetup report field output units.
  - Add support to redisplay column headings for repeating column reports.
  - Fix report header and row resource leaks.
  - Report timestamps of ioctls with dmsetup -vvv.
  - Recognize report field name variants without any underscores too.
  - Add dmsetup --interval and --count to repeat reports at specified intervals.
  - Add dm_timestamp functions to libdevmapper.
  - Recognise vg/lv name format in dmsetup.
  - Move size display code to libdevmapper as dm_size_to_string.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.128-1
changelog:
  - Allocation setting cache_pool_cachemode is replaced by cache_mode.
  - Don't attempt to close config file that couldn't be opened.
  - Check for valid cache mode in validation of cache segment.
  - Change internal interface handling cache mode and policy.
  - When no cache policy specified, prefer smq (if available) over mq.
  - Add demo cache-mq and cache-smq profiles.
  - Add cmd profilable allocation/cache_policy,cache_settings,cache_mode.
  - Require cache_check 0.5.4 for use of --clear-needs-check-flag.
  - Fix lvmetad udev rules to not override SYSTEMD_WANTS, add the service instead.
  - Fix 'dmstats list -o all' segfault.
  - Separate dmstats statistics fields from region information fields.
  - Add interval and interval_ns fields to dmstats reports.
  - Do not include internal glibc headers in libdm-timestamp.c (1.02.104)
  - Exit immediately if no device is supplied to dmsetup wipe_table.
  - Suppress dmsetup report headings when no data is output. (1.02.104)
  - Adjust dmsetup usage/help output selection to match command invoked.
  - Fix dmsetup -o all to select correct fields in splitname report.
  - Restructure internal dmsetup argument handling across all commands.
  - Add dm_report_is_empty() to indicate there is no data awaiting output.
  - Add more arg validation for dm_tree_node_add_cache_target().
  - Add --alldevices switch to replace use of --force for stats create / delete.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.129-1
changelog:
  - Drop error message when vgdisplay encounters an exported VG. (2.02.27)
  - Fix shared library generation to stop exporting internal functions.(2.02.120)
  - Accept --cachemode with lvconvert.
  - Fix and improve reporting properties of cache-pool.
  - Enable usage of --cachepolicy and --cachesetting with lvconvert.
  - Don't allow to reduce size of thin-pool metadata.
  - Fix debug buffer overflows in cmirrord logging.
  - Add --foreground and --help to cmirrord.
  - Add 'precise' column to statistics reports.
  - Add --precise switch to 'dmstats create' to request nanosecond counters.
  - Add precise argument to dm_stats_create_region().
  - Add support to libdm-stats for precise_timestamps
  - Fix devmapper.pc pkgconfig file to declare -lrt dependency properly.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.130-1
changelog:
  - Fix use of uninitialized device status if reading outdated .cache record.
  - Restore support for --monitor option in lvcreate (2.02.112).
  - Read thin-pool data and metadata percent without flush.
  - Detect blocked thin-pool and avoid scanning their thin volumes.
  - Check if dm device is usable before checking its size (2.02.116).
  - Extend parsing of cache_check version in configure.
  - Make lvpoll error messages visible in lvmpolld's stderr and in syslog.
  - Add 'make install_full_man' to install all man pages regardless of config.
  - Parse thin-pool status with one single routine internally.
  - Add --histogram to select default histogram fields for list and report.
  - Add report fields for displaying latency histogram configuration and data.
  - Add dmstats --bounds to specify histogram boundaries for a new region.
  - Add dm_histogram_to_string() to format histogram data in string form.
  - Add public methods to libdm to access numerical histogram config and data.
  - Parse and store histogram data in dm_stats_list() and dm_stats_populate().
  - Add an argument to specify histogram bounds to dm_stats_create_region().
  - Add dm_histogram_bounds_from_{string,uint64_t}() to parse histogram bounds.
  - Add dm_histogram handle type to represent a latency histogram and its bounds.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.131-1
changelog:
  - Fix PV label processing failure after pvcreate in lvm shell with lvmetad.
  - Rename 'make install_full_man' to install_all_man and add all_man target.
  - Fix vgimportclone cache_dir path name (2.02.115).
  - Swapping of LV identifiers handles more complex LVs.
  - Use passed list of PVS when allocating space in lvconvert --thinpool.
  - Disallow usage of --stripe and --stripesize when creating cache pool.
  - Warn user when caching raid or thin pool data LV.
  - When layering LV, move LV flags with segments.
  - Ignore persistent cache if configuration changed. (2.02.127)
  - Fix devices/filter to be applied before disk-accessing filters. (2.02.112)
  - Make tags only when requested via 'make tags'.
  - Configure supports --disable-dependency-tracking for one-time builds.
  - Fix usage of configure.h when building in srcdir != builddir.
  - Do not check for full thin pool when activating without messages (1.02.107).


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.132-1
changelog:
  - Fix lvmconf to set locking_type=2 if external locking library is requested.
  - Remove verbose message when rescanning an unchanged device. (2.02.119)
  - Add origin_uuid, mirror_log_uuid, move_pv_uuid, convert_lv_uuid report fields.
  - Add pool_lv_uuid, metadata_lv_uuid, data_lv_uuid reporting fields.
  - Fix PV label processing failure after pvcreate in lvm shell with lvmetad.
  - Update man pages for dmsetup and dmstats.
  - Improve help text for dmsetup.
  - Use --noflush and --nolockfs when removing device with --force.
  - Parse new Overflow status string for snapshot target.
  - Check dir path components are valid if using dm_create_dir, error out if not.
  - Fix /dev/mapper handling to remove dangling entries if symlinks are found.
  - Make it possible to use blank value as selection for string list report field.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.133-1
changelog:
  - Support repeated -o|--options for reporting commands.
  - Support -o- and -o# for reporting commands to remove and compact fields.
  - Fix missing PVs from pvs output if vgremove is run concurrently.
  - Remove unwanted error message when running pvs/vgs/lvs and vgremove at once.
  - Check newly created VG's metadata do not overlap in metadata ring buffer.
  - Check metadata area size is at least the minimum size defined for the format.
  - Thin pool targets uses low_water_mark from profile.
  - Dropping 'yet' from error of unsupported thick snapshot of snapshots.
  - Do not support unpartitioned DASD devices with CDL formatted with pvcreate.
  - For thins use flush for suspend only when volume size is reduced.
  - Enable code which detects the need of flush during suspend.
  - Ensure --use-policy will resize volume to fit below threshold.
  - Correct percentage evaluation when checking thin-pool over threshold.
  - Fix lvmcache to move PV from VG to orphans if VG is removed and lvmetad used.
  - Fix lvmcache to not cache even invalid info about PV which got removed.
  - Support checking of memlock daemon counter.
  - Allow all log levels to be used with the lvmetad -l option.
  - Add optional shutdown when idle support for lvmetad.
  - Fix missing in-sync progress info while lvconvert used with lvmpolld.
  - Add report/compact_output_cols to lvm.conf to define report cols to compact.
  - Do not change logging in lvm2 library when it's already set.
  - Check for enough space in thin-pool in command before creating new thin.
  - Make libblkid detect all copies of the same signature if use_blkid_wiping=1.
  - Fix vgimportclone with -n to not add number unnecessarily to base VG name.
  - Cleanup vgimportclone script and remove dependency on awk, grep, cut and tr.
  - Add vg_missing_pv_count report field to report number of missing PVs in a VG.
  - Properly identify internal LV holding sanlock locks within lv_role field.
  - Add metadata_devices and seg_metadata_le_ranges report fields for raid vols.
  - Fix lvm2-{activation,clvmd,cmirrord,monitor} service to exec before mounting.
  - Disable thin monitoring plugin when it fails too often (>10 times).
  - Fix/restore parsing of empty field '-' when processing dmeventd event.
  - Enhance dm_tree_node_size_changed() to recognize size reduction.
  - Support exit on idle for dmenventd (1 hour).
  - Add support to allow unmonitor device from plugin itself.
  - New design for thread co-operation in dmeventd.
  - Dmeventd read device status with 'noflush'.
  - Dmeventd closes control device when no device is monitored.
  - Thin plugin for dmeventd improved percentage usage.
  - Snapshot plugin for dmeventd improved percentage usage.
  - Add dm_hold_control_dev to allow holding of control device open.
  - Add dm_report_compact_given_fields to remove given empty fields from report.
  - Use libdm status parsing and local mem raid dmeventd plugin.
  - Use local mem pool and lock only lvm2 execution for mirror dmeventd plugin.
  - Lock protect only lvm2 execution for snapshot and thin dmeventd plugin.
  - Use local mempool for raid and mirror plugins.
  - Reworked thread initialization for dmeventd plugins.
  - Dmeventd handles snapshot overflow for now equally as invalid.
  - Convert dmeventd to use common logging macro system from libdm.
  - Return -ENOMEM when device registration fails instead of 0 (=success).
  - Enforce writethrough mode for cleaner policy.
  - Add support for recognition and deactivation of MD devices to blkdeactivate.
  - Move target status functions out of libdm-deptree.
  - Correct use of max_write_behind parameter when generating raid target line.
  - Fix dm-event systemd service to make sure it is executed before mounting.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.134-4
changelog:
  - Refactor some lvmetad code and adjust some duplicate PV messages.
  - No longer repair/wipe VG/PVs if inaccessible because foreign or shared.
  - Pass correct data size to mirror log calc so log can be bigger than 1 extent.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.135-1
changelog:
  - Add a model file for Coverity.
  - Show correct error message for unsupported yet cache pool repair.
  - Allow lvconvert cache pools' data and metadata LV to raid.
  - Fix reading of old metadata with missing cache policy or mode settings.
  - Issue error if external_device_info_source=udev and udev db record incomplete.
  - Update lvmetad duplicate VG name handling to use hash function extensions.
  - Detect invalid vgrenames by vgid where the name is unchanged.
  - Fix passing of 32bit values through daemons (mostly lvmlockd).
  - Use local memory pool for whole alloc_handle manipulation.
  - Add missing pointer validation after dm_get_next_target().
  - Do not deref NULL pointer in debug message for _match_pv_tags().
  - Drop unneeded stat() call when checking for sysfs file.
  - Fix memory leak on error path of failing thin-pool percentage check.
  - Add missing test for failing node allocation in lvmetad.
  - Correct configure messages when enabling/disabling lvmlockd.
  - Extend dm_hash to support multiple values with the same key.
  - Add missing check for allocation inside dm_split_lvm_name().
  - Test dm_task_get_message_response for !NULL in dm_stats_print_region().
  - Add checks for failing dm_stats_create() in dmsetup.
  - Add missing fifo close when failed to initialize client connection.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.136-1
changelog:
  - Add new --sinceversion option for lvmconfig --type new.
  - Fix inactive table loaded for wrapping thin-pool when resizing it.
  - Extend the list of ignored libraries when locking memory.
  - Show error message when trying to create unsupported raid type.
  - Improve preloading sequence of an active thin-pool target.
  - Drop extra space from cache target line to fix unneded table reloads.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.137-1
changelog:
  - Restore archiving before changing metadata in vgextend (2.02.117).
  - Dropped internal usage of log_suppress(2).
  - Cleaned logging code for buffer size usage.
  - Added internal id_read_format_try() function to check and read valid UUID.
  - Change lvcreate, lvrename, lvresize to use process_each_vg.
  - Change process_each_vg to handle single VG as separate arg.
  - Issue error if ambiguous VG name is supplied in most commands.
  - Make process_each fns always work through full list of known VG names.
  - Use dm_get_status_mirror() instead of individual parsers.
  - Add mem pool arg for check_transient_status() target function.
  - Avoid misleading error with -m is omitted with lvconvert to raid types.
  - Add system_id to vginfo cache.
  - Mirror plugin in dmeventd uses dm_get_status_mirror().
  - Add dm_get_status_mirror() for parsing mirror status line.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.138-1
changelog:
  - Support lvrename for hidden (used) cache pools.
  - Fix lvrename for stacked cache pools
  - Better support for dmsetup static linkage.
  - Extend validity checks on dmeventd client socket.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.139-2
changelog:
  - Update lvmlockd with the new VG seqno before devices are suspended.
  - Rework vgrename to use the common processing code in toollib.
  - Make pvs show new devices on the system since the last .cache update.
  - Document F,D and M thin pool health status chars for lv_attr in lvs man page.
  - Also add lvm2-activation{-early,-net}.service systemd status for lvmdump -s.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.140-3
changelog:
  - Fix lvm2app to return either 0 or 1 for lvm_vg_is_{clustered,exported}.
  - Add kernel_discards report field to display thin pool discard used in kernel.
  - Correct checking of target presence when driver access is disabled.
  - Eval poolmetadatasize arg earlier in lvresize.
  - Fix vgcfgrestore to respect allocatable attribute of PVs.
  - Add report/mark_hidden_devices to lvm.conf.
  - Use brackets consistently in report fields to mark hidden devices.
  - Restore background polling processing during auto-activation (2.02.119).
  - Fix invalid memory read when reporting cache LV policy_name (2.02.126).


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.141-1
changelog:
  - Add metadata/check_pv_device_sizes switch to lvm.conf for device size checks.
  - Warn if device size is less than corresponding PV size in metadata.
  - Cache device sizes internally.
  - Restore support for command breaking in process_each_lv_in_vg() (2.02.118).
  - Use correct mempool when process_each_lv_in_vg() (2.02.118).
  - Fix lvm.8 man to show again prohibited suffixes.
  - Fix configure to set proper use_blkid_wiping if autodetected as disabled.
  - Initialise udev in clvmd for use in device scanning. (2.02.116)
  - Add seg_le_ranges report field for common format when displaying seg devices.
  - Honour report/list_item_separator for seg_metadata_le_ranges report field.
  - Don't mark hidden devs in -o devices,metadata_devices,seg_pe_ranges.(2.02.140)
  - Change LV sizes in seg_pe_ranges report field to match underlying devices.
  - Add kernel_cache_settings report field for cache LV settings used in kernel.
  - Fix man page for dmsetup udevcreatecookie.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.142-1
changelog:
  - Fix memory pool corruption in pvmove (2.02.141).
  - Support control of spare metadata creation when repairing thin-pool.
  - Fix config type of 'log/verbose' from bool to int (2.02.99).
  - Fix inverted data LV thinp watermark calc for dmeventd response (2.02.133).
  - Use use_blkid_wiping=0 if not defined in lvm.conf and support not compiled in.
  - Do not check for suspended devices if scanning for lvmetad update.
  - Clear cached bootloader areas when PV format changed.
  - Fix partn table filter with external_device_info_source="udev" and blkid<2.20.
  - Use fully aligned allocations for dm_pool_strdup/strndup() (1.02.64).
  - Fix thin-pool table parameter feature order to match kernel output.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.143-1
changelog:
  - Introduce new lvm2-dbusd package providing LVM D-Bus daemon and service.
  - Fix error path when sending thin-pool message fails in update_pool_lv().
  - Support reporting CheckNeeded and Fail state for thin-pool and thin LV.
  - For failing thin-pool and thin volume correctly report percentage as INVALID.
  - Report -1, not 'unkown' for lv_{snapshot_invalid,merge_failed} with --binary.
  - Add configure --enable-dbus-service for an LVM D-Bus service.
  - Replace configure --enable-python_bindings with python2 and python3 versions.
  - If PV belongs to some VG and metadata missing, skip it if system ID is used.
  - Automatically change PV header extension to latest version if writing PV/VG.
  - Identify used PVs in pv_attr field by new 'u' character.
  - Add pv_in_use reporting field to report if PV is used or not.
  - Add pv_ext_vsn reporting field to report PV header extension version.
  - Add protective flag marking PVs as used even if no metadata available.
  - Improve status parsing for thin-pool and thin devices.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.143-2
changelog:
  - Add Requires: python3-gobject dependency for lvm2-dbusd subpackage.
  - Build lvm2-lockd with sanlock support only on x86_64, arch64 and power64 arch.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.144-1
changelog:
  - Only show (u)sed pv_attr char when PV is not (a)llocatable. (2.02.143)
  - Update makefile to generate lcov output also for lvmpolld and lvmlockd.
  - Fix SystemdService lvm2-lvmdbusd.service name.
  - Improve support for env LVM_VG_NAME for reference VG name in lvconvert.
  - Fix regression when lvresize accepted zero sizes. (2.02.141)
  - Always warn user about PV in use even when pvremove uses --force --force.
  - Use uninitialized pool header detection in all cases.
  - Fix read error detection when checking for uninitialized thin-pool header.
  - Fix error path for internal error in lvmetad VG lookup code.
  - Fix string boundary check in _get_canonical_field_name().
  - Always initialized hist struct in _stats_parse_histogram().


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.145-1
changelog:
  - Make it possible to use lvremove and lvrename on historical LVs.
  - For historical LVs, report 'none' for lv_layout and 'history' for lv_role.
  - Add full_{ancestors,descendants} fields to report LV ancestry with history.
  - Report (h)istorical state within 5th bit (State) of the lv_attr field.
  - Add lv_historical reporting field to report if LV is historical or not.
  - Add lv_time_removed reporting field to display removal time for hist. LVs.
  - Report lv_name, lv_uuid, vg_name, lv_time for historical LVs.
  - Add --nohistory switch to lvremove to disable history recording on demand.
  - Add -H|--history switch to lvs and lvdisplay to include historical LVs.
  - Create historical LVs out of removed thin snapshot LVs and record in history.
  - Add metadata/lvs_history_retention_time for automatic removal of hist. LVs.
  - Add metadata/record_lvs_history config for switching LV history recording.
  - Add support and infrastructure for tracking historical LVs.
  - Improve lvconvert man page.
  - Add kernel_cache_policy lvs field.
  - Display [unknown] instead of 'unknown device' in pvs output.
  - Fix error path when pvcreate allocation fails (2.02.144).
  - Display [unknown] instead of blank for unknown VG names in pvs output.
  - Fix dm_config_write_node and variants to return error on subsection failures.
  - Remove 4096 char limit due to buffer size if writing dm_config_node.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.146-3
changelog:
  - Tidy report field names, headings and widths.
  - Add vgscan --notifydbus to send a dbus notification.
  - Add dbus notification from commands after a PV/VG/LV changes state.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.146-4
changelog:
  - More man page cleanups in lvconvert.
  - Fix makefile vpath in /udev when generating udev rules files.
  - Another attempt to improve VG name parsing for lvconvert (2.02.144).
  - Use new cache status info and skip flushing for failed cache.
  - Support --uncache with missing PVs.
  - Improve parsing of cache status and report Fail, Error, needs_check, ro.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.147-5
changelog:
  - If available, use /proc/self/mountinfo to detect mounted volume in fsadm.
  - Fix resize of stacked raid thin data volume (2.02.141).
  - Fix test for lvremove failure in lvconvert --uncache (2.02.146).


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.148-1
changelog:
  - Introduce TARGET_NAME and MODULE NAME macros.
  - Replace hard-coded module and target names with macros.
  - Add pv_major and pv_minor report fields.
  - Detect and warn about mismatch between devices used and assumed for an LV.
  - Adjust raid status function.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.149-2
changelog:
  - Do not flush thin-pool when checking metadata fullness.
  - Remove spurious error about no value in /sys/dev/block/major:minor/dm/uuid.
  - Fix device mismatch detection for LV if persistent .cache file is used.
  - Fix holder device not being found in /dev while sysfs has it during dev scan.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.150-1
changelog:
  - Avoid using flushing dm status ioctl when checking for usable DM device.
  - Check for devices without LVM- uuid prefix only with kernels < 3.X.
  - Reuse %FREE size aproximation with lvcreate -l%PVS thin-pool.
  - Allow the lvmdump directory to exist already provided it is empty.
  - Show lvconverted percentage with 2 decimal digits.
  - Fix regression in suspend when repairing --type mirror (2.02.133).
  - Change log_debug ioctl flags from single characters into words.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.151-1
changelog:
  - Fix error path after reusing of _setup_task (2.02.150).
  - Fix memory access for empty sysfs values (2.02.149).
  - Disable lvmetad when lvm1 metadata is seen, so commands revert to scanning.
  - Suppress errors when snapshot merge gets delayed because volume is in use.
  - Avoid internal snapshot LV names in messages.
  - Autodetect and use /run/lock dir when available instead of /var/lock.
  - lvchange --refresh for merging thin origin will retry to deactivate snapshot.
  - Recognize in-progress snapshot merge for thin volumes from dm table.
  - Avoid deciding to initiate a pending snapshot merge during resume.
  - Improve retrying lvmetad requests while lvmetad is being updated.
  - Read devices instead of using the lvmetad cache if rescan fails.
  - Move lvmetad token/filter check and device rescan to the start of commands.
  - Don't try deactivating fictional internal LV before snapshot merge. (2.02.105)
  - When not obtaining devs from udev, check they exist before caching them.
  - Detect device mismatch also when compiling without udev support.
  - Do not strip LVM- when debug reporting not found uuid.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.152-1
changelog:
  - Use any inherited tags when wiping metadata sub LVs to ensure activation.
  - Add str_list_wipe.
  - Improve support for interrupting procesing of volumes during lvchange.
  - Use failed command return code when lvchanging read-only volume.
  - Show creation transaction_id and zeroing state of pool with thin volume.
  - Stop checking for dm_cache_mq policy with cache target 1.9 (alias to smq).
  - Check first /sys/module/dm_* dir existance before using modprobe.
  - Remove mpath from 10-dm.rules, superseded by 11-dm-mpath.rules (mpath>=0.6.0).
  - Add dm_udev_wait_immediate to libdevmapper for waiting outside the library.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.153-2
changelog:
  - Change warning messages related to duplicate PVs.
  - A named device is always processed itself, not switched for a duplicate.
  - Add PV attr "d" and report field "duplicate" for duplicate PVs.
  - Add config setting to disallow VG changes when duplicate PVs exist.
  - Use device size and active LVs to choose the preferred duplicate PV.
  - Disable lvmetad when duplicate PVs are seen.
  - Support --chunksize option also when caching LV when possible.
  - Add function to check for target presence and version via 1 ioctl.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.154-1
changelog:
  - Fix liblvm segfault after failure initialising lvmetad connection.
  - Retry open without O_NOATIME if it fails (not file owner/CAP_FOWNER).
  - Split _report into one fn for options and arguments and one for processing.
  - Show library version in message even if dm driver version is unavailable.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.155-1
changelog:
  - Reject PV tags on pvmove cmdline because only 1 PV is supported. (2.02.141)
  - Fix compilation error when building with configure --disable-devmapper.
  - Fix lvmconfig --type diff to display complete diff if config cascade used.
  - Automatically filter out partitioned loop devices with partscan (losetup -P).
  - Fix lvm devtypes internal error if -S used with field name from pvs/vgs/lvs.
  - When reporting Data%,Snap%,Meta%,Cpy%Sync use single ioctl per LV.
  - Add lvseg_percent_with_info_and_seg_status() for percent retrieval.
  - Enhance internal seg_status handling to understand snapshots better.
  - When refresh failed in suspend, call resume upon error path.
  - Support passthrough cache mode when waiting for clean cache.
  - Check cache status only for 'in-use' cache pools.
  - Extend setup_task() to preset flushing for dm_task object.
  - When checking LV is a merging COW, validate its a COW LV first.
  - Correcting value in copy_percent() for 100%.
  - Update vgreduce to use process_each_vg.
  - Update lvconvert to use process_each_lv.
  - Update pvscan to use process_each_vg for autoactivation.
  - Add basic support for --type raid0 using md.
  - Add support for lvchange --cachemode for cached LV.
  - Fix liblvm2app error handling when setting up context.
  - Delay liblvm2app init in python code until it is needed.
  - Simplify thread locking in lvmetad to fix locking problems.
  - Allow pvremove -ff to remove a duplicate PV.
  - Fix lvm2-activation-generator to read lvm.conf without full command setup.
  - Allow a minimal context to be used in lvm2app for reading lvm.conf.
  - Report passthrough caching mode when parsing cache mode.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.156-1
changelog:
  - Don't allow duplicate orphan PVs to be used with vgcreate/vgextend/pvcreate.
  - Improve handling of lvmetad update failures.
  - Yes/No prompt accepts '^[ ^t]*([Yy]([Ee]([Ss]|)|)|[Nn]([Oo]|))[ ^t]*$'.
  - If available, also collect output from lsblk command when running lvmdump -s.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.158-1
changelog:
  - Add a more efficient native vgimportclone command to replace the script.
  - Make lvmlockd always attempt to connect to lvmetad if no connection exists.
  - Let lvmetad handle new connections after shutdown signal.
  - Disable lvmetad when vgcfgrestore begins and enable it again after.
  - Make pvscan do activation if lvmetad is configured but not running.
  - Fix rescanning the PVs for a single VG when using lvmetad.
  - Pool metadata lvresize uses now same code as resize of normal volume.
  - Preserve monitoring status when updating thin-pool metadata.
  - Return 0 (inactive) when status cannot be queried in _lv_active().
  - Switch to log_warn() for failing activation status query.
  - Replace vgimportclone script with binary.
  - While lvmetad is shutting down, continue handling all connections cleanly.
  - Refactor lvconvert argument handling code.
  - Notify lvmetad when vgcfgrestore changes VG metadata.
  - Add --logonly option to report only cmd log for a command, not other reports.
  - Add log/command_log_selection to configure default selection used on cmd log. 
  - Use 'orphan' object type in cmd log for groups to collect PVs not yet in VGs. 
  - Add lvm lastlog command for query and display of last cmd's log in lvm shell.
  - Report per-object return codes via cmd log while processing multiple objects.
  - Annotate processing code with log report hooks for per-object command log. 
  - Also pass common printed messages (besides warnings and errors) to log report.
  - Log warnings and errors via report during cmd processing if this is enabled.
  - Make it possible to iterate over internal 'orphan' VGs in process_each_vg fn.
  - Make -S|--select option groupable that allows this option to be repeated.
  - Make -O|--sort option groupable that allows this option to be repeated.
  - Add --configreport option to select report for which next options are applied.
  - Add support for priorities on grouping command arguments.
  - Add report/{pvs,vgs,lvs,pvsegs,segs}_{cols,sort}_full to lvm.conf.
  - Add lvm fullreport command for joined PV, VG, LV and segment report per VG.
  - Integrate report group handling and cmd log report into cmd processing code.
  - Add log/report_command_log to lvm.conf to enable or disable cmd log report.
  - Add log/report_output_format to lvm.conf for default report output format.
  - Recognize --reportformat {basic|json} option to select report output format.
  - Add log/command_log_{sort,cols} to lvm.conf to configure command log report.
  - Add log_object_{type,name,id,group,group_id} fields to cmd log. 
  - Add log_{seq_num,type,context,message,errno,ret_code} fields to cmd log. 
  - Add CMDLOG report type - a separate report type for command logging.
  - Recognize 'all' keyword used in selection as synonym for "" (no selection).
  - Add dm_report_set_selection to set selection for multiple output of report.
  - Add DM_REPORT_OUTPUT_MULTIPLE_TIMES flag for multiple output of same report.
  - Move field width handling/sort init from dm_report_object to dm_report_output.
  - Add _LOG_BYPASS_REPORT flag for bypassing any log report currently set. 
  - Introduce DM_REPORT_GROUP_JSON for report group with JSON output format.
  - Introduce DM_REPORT_GROUP_BASIC for report group with basic report output.
  - Introduce DM_REPORT_GROUP_SINGLE for report group having single report only.
  - Add dm_report_group_{create,push,pop,destroy} to support report grouping.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.159-1
changelog:
  - Add raid0_meta segment type that provides metadata space for raid conversions.
  - Fix created link for a used pool for vgmknode.
  - Introduce and use is_power_of_2 macro.
  - Support conversions between striped and raid0 segment types.
  - Add infrastructure for raid takeover lvconvert options.
  - Update default dmstats field selections for groups.
  - Add 'obj_type', 'group_id', and 'statsname' fields to dmstats reports.
  - Add --area, --region, and --group to dmstats to control object selection.
  - Add --alias, --groupid, --regions to dmstats for group creation and deletion.
  - Add 'group' and 'ungroup' commands to dmstats.
  - Allow dm_stats_delete_group() to optionally delete all group members.
  - Add dm_stats_get_object_type() to return the type of object present.
  - Add dm_stats_walk_init() allowing control of objects visited by walks.
  - Add dm_stats_get_group_descriptor() to return the member list as a string.
  - Introduce dm_stats_get_nr_groups() and dm_stats_group_present().
  - Add dm_stats_{get,set}_alias() to set and retrieve alias names for groups.
  - Add dm_stats_get_group_id() to return the group ID for a given region.
  - Add dm_stats_{create,delete}_group() to allow grouping of stats regions.
  - Add enum-driven dm_stats_get_{metric,counter}() interfaces.
  - Add dm_bitset_parse_list() to parse a string representation of a bitset.
  - Thin dmeventd plugin umounts lvm2 volume only when pool is 95% or more.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.161-1
changelog:
  - Prohibit some lvchange/lvresize that were failing on raid0 volumes.
  - Fix segfaults in complex vgsplits. (2.02.159)
  - Reformat unwieldy lvconvert man page.
  - Allow --force to be passed through to pvcreate from vgcreate. (2.02.144)
  - Fix lvresize of filesystem when LV has already right size (2.02.141)
  - New LVM_LOG_FILE_MAX_LINES env var to limit max size of created logs.
  - Disable queueing on mpath devs in blk-availability systemd service/initscript.
  - Add new -m|--mpathoption disablequeueing to blkdeactivate.
  - Automatically group regions with 'create --segments' unless --nogroup.
  - Fix resource leak when deleting the first member of a group.
  - Allow --bounds with 'create --filemap' for dmstats.
  - Enable creation of filemap regions with histograms.
  - Enable histogram aggregation for regions with more than one area.
  - Enable histogram aggregation for groups of regions.
  - Add a --filemap option to 'dmstats create' to allow mapping of files.
  - Add dm_stats_create_regions_from_fd() to map file extents to regions.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.162-1
changelog:
  - Support lvconvert -Zn also when doing full cache pool conversion.
  - Suppress not zeroing warn when converting to thin LV for non-zeroing tpool.
  - Fix automatic updates of PV extension headers to newest version.
  - Improve lvconvert --trackchanges validation to require --splitmirrors 1.
  - Add note about lastlog built-in command to lvm man page.
  - Fix unrecognised segtype flag message.
  - lvconvert not clears cache pool metadata ONLY with -Zn. 
  - Enabled lvconvert --uncache to work with partial VG.
  - Fix json reporting to escape '"' character that may appear in reported string.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.163-1
changelog:
  - Add profile for lvmdbusd which uses lvm shell json report output.
  - Restrict in-command modification of some parms in lvm shell.
  - Apply LVM_COMMAND_PROFILE early for lvm shell.
  - Refactor reporting so lvm shell log report collects whole of cmd execution.
  - Support LVM_*_FD envvars to redirect output to file descriptors.
  - Limit use of --corelog and --mirrorlog to mirrors in lvconvert.
  - Reject --nosync option for RAID6 LVs in lvcreate.
  - Do not refresh whole cmd context if profile dropped after processing LVM cmd. 
  - Support straightforward lvconvert between striped and raid4 LVs. 
  - Support straightforward lvconvert between raid1 and mirror LVs. 
  - Report supported conversions when asked for unsupported raid lvconvert.
  - Add "--rebuild PV" option to lvchange to allow for PV selective rebuilds.
  - Preserve existing mirror region size when using --repair.
  - Forbid stripe parameters with lvconvert --repair.
  - Unify stripe size validation into get_stripe_params to catch missing cases.
  - Further lvconvert validation logic refactoring.
  - Add "lvm fullreport" man page.
  - Add dm_report_destroy_rows/dm_report_group_output_and_pop_all for lvm shell.
  - Adjust group handling and json production for lvm shell.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.164-2
changelog:
  - Fix selection of PVs when allocating raid0_meta.
  - Fix sdbus socket leak leading to hang in lvmnotify.
  - Specify max stripes for raid LV types: raid0:64; 1:10; 4,5:63; 6:62; 10:32.
  - Avoid double suffix when naming _rmeta LV paired with _rimage LV.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.165-1
changelog:
  - Add lvmraid(7) man page.
  - Use udev db to check for mpath components before running pvscan for lvmetad.
  - Use lsblk -s and lsblk -O in lvmdump only if these options are supported.
  - Fix number of stripes shown in lvcreate raid10 message when too many.
  - Change lvmdbusd to use new lvm shell facilities.
  - Do not monitor cache-pool metadata when LV is just being cleared.
  - Add allocation/cache_pool_max_chunks to prevent misuse of cache target.
  - Give error not segfault in lvconvert --splitmirrors when PV lies outside LV.
  - Fix typo in report/columns_as_rows config option name recognition (2.02.99).
  - Avoid PV tags when checking allocation against parallel PVs. 
  - Disallow mirror conversions of raid10 volumes.
  - Fix dmeventd unmonitoring when segment type (and dso) changes.
  - Don't allow lvconvert --repair on raid0 devices or attempt to monitor them.
  - No longer adjust incorrect number of raid stripes supplied to lvcreate.
  - Move lcm and gcd to lib/misc.
  - Fix vgsplit of external origins. (2.02.162)
  - Prohibit creation of RAID LVs unless VG extent size is at least the page size.
  - Suppress some unnecessary --stripesize parameter warnings.
  - Fix 'pvmove -n name ...' to prohibit collocation of RAID SubLVs
  - Improve explanation of udev fallback in libdevmapper.h.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.166-1
changelog:
  - Fix lvm2-activation-generator to read all LVM2 config sources. (2.02.155)
  - Fix lvchange-rebuild-raid.sh to cope with older target versions.
  - Use dm_config_parse_without_dup_node_check() to speedup metadata reading.
  - Fix lvconvert --repair regression
  - Fix reported origin lv field for cache volumes. (2.02.133)
  - Always specify snapshot cow LV for monitoring not internal LV. (2.02.165)
  - Fix lvchange --discard|--zero for active thin-pool.
  - Enforce 4MiB or 25% metadata free space for thin pool operations.
  - Fix lock-holder device for thin pool with inactive thin volumes.
  - Use --alloc normal for mirror logs even if the mimages were stricter.
  - Use O_DIRECT to gather metadata in lvmdump.
  - Ignore creation_time when checking for matching metadata for lvmetad.
  - Fix possible NULL pointer derefence when checking for monitoring.
  - Add lvmreport(7) man page.
  - Don't install lvmraid(7) man page when raid excluded. (2.02.165)
  - Report 0% as dirty (copy%) for cache without any used block.
  - Fix lvm2api reporting of cache data and metadata percent.
  - Restore reporting of metadata usage for cache volumes (2.02.155).
  - Support raid scrubbing on cache origin LV.
  - Fix man entry for dmsetup status.
  - Introduce new dm_config_parse_without_dup_node_check().
  - Don't omit last entry in dmstats list --group.


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.167-1
changelog:
  - Use log_error in regex and sysfs filter to describe reason of failure.
  - Fix blkdeactivate to deactivate dev stack if dev on top already unmounted.
  - Prevent non-synced raid1 repair unless --force
  - Prevent raid4 creation/conversion on non-supporting kernels
  - Add direct striped -> raid4 conversion
  - Fix raid4 parity image pair position on conversions from striped/raid0*
  - Fix a few unconverted return code values for some lvconvert error path.
  - Disable lvconvert of thin pool to raid while active.
  - Disable systemd service start rate limiting for lvm2-pvscan@.service.
  - Log failure of raid device with log_error level.
  - Use dm_log_with_errno and translate runtime to dm_log only when needed.
  - Make log messages from dm and lvm library different from dmeventd.
  - Notice and Info messages are again logged from dmeventd and its plugins.
  - Dmeventd now also respects DM_ABORT_ON_INTERNAL_ERRORS as libdm based tool.
  - Report as non default dm logging also when logging with errno was changed.
  - Use log_level() macro to consistently decode message log level in dmeventd.
  - Still produce output when dmsetup dependency tree building finds dev missing.
  - Check and report pthread_sigmask() failure in dmeventd.
  - Check mem alloc fail in _canonicalize_field_ids().
  - Use unsigned math when checking more then 31 legs of raid.
  - Fix 'dmstats delete' with dmsetup older than v1.02.129
  - Fix stats walk segfault with dmsetup older than v1.02.129


author: Peter Rajnoha <prajnoha@redhat.com> - 2.02.168-1
changelog:
  - Display correct sync_percent on large RaidLVs
  - lvmdbusd --blackboxsize <n> added, used to override default size of 16
  - Allow a transiently failed RaidLV to be refreshed
  - Use lv_update_and_reload() inside mirror code where it applies.
  - Preserve mirrored status for temporary layered mirrors.
  - Use transient raid check before repairing raid volume.
  - Implement transient status check for raid volumes.
  - Only log msg as debug if lvm2-lvmdbusd unit missing for D-Bus notification.
  - Avoid duplicated underscore in name of extracted LV image.
  - Missing stripe filler now could be also 'zero'.
  - lvconvert --repair accepts --interval and --background option.
  - More efficiently prepare _rmeta devices when creating a new raid LV.
  - Document raid status values.
  - Always exit dmsetup with success when asked to display help/version.


author: Marian Csontos <mcsontos@redhat.com> - 2.02.171-1
changelog:
  - Add RAID takeover and reshaping.
  - Add pvcreate prompt when device size doesn't match setphysicalvolumesize.
  - Remove obsolete lvmchange binary - convert to built-in command.
  - Support cache segment with configurable metadata format.
  - Add option for lvcreate/lvconvert --cachemetadataformat auto|1|2.
  - Add allocation/cache_metadata_format profilable settings.
  - Command line options, help and man pages using common definitions.
  - Add build-time configuration command line to 'lvm version' output.
  - Disable lvmetad when lvconvert --repair is run.
  - Raise mirror/raid default regionsize to 2MiB.
  - Support shrinking of RaidLVs.
  - Introduce global/fsadm_executable to make fsadm path configurable.
  - Look for limited thin pool metadata size when using 16G metadata.
  - Add lvconvert pool creation rule disallowing options with poolmetadata.
  - Fix missing lvmlockd LV locks in lvchange and lvconvert.
  - Fix dmeventd setup for lvchange --poll.
  - Fix use of --poll and --monitor with lvchange and vgchange.
  - Disallow lvconvert of hidden LV to a pool.
  - Ignore --partial option when not used for activation.
  - Allow --activationmode option with lvchange --refresh.
  - Allow valid lvconvert --regionsize change
  - Fix SIGINT blocking to prevent corrupted metadata
  - Fix systemd unit existence check for lvmconf --services --startstopservices.
  - Check and use PATH_MAX buffers when creating vgrename device paths.
  - Handle known table line parameter order change in specific raid target vsns.
  - Show more information for cached volumes in lvdisplay [-m].
  - Use function cache_set_params() for both lvcreate and lvconvert.
  - Skip rounding on cache chunk size boudary when create cache LV.
  - Improve cache_set_params support for chunk_size selection.
  - Fix metadata profile allocation/cache_[mode|policy] setting.
  - Fix missing support for using allocation/cache_pool_chunk_size setting.
  - Support conversion of raid type, stripesize and number of disks
  - Reject writemostly/writebehind in lvchange during resynchronization.
  - Deactivate active origin first before removal for improved workflow.
  - Fix regression of accepting both --type and -m with lvresize. (2.02.158)
  - Add extra memory page when limiting pthread stack size in clvmd.
  - Support striped/raid0* <-> raid10_near conversions.
  - Support region size changes on existing RaidLVs.
  - Avoid parallel usage of cpg_mcast_joined() in clvmd with corosync.
  - Support raid6_{ls,rs,la,ra}_6 segment types and conversions from/to it.
  - Support raid6_n_6 segment type and conversions from/to it.
  - Support raid5_n segment type and conversions from/to it.
  - Support new internal command _dmeventd_thin_command.
  - Introduce new dmeventd/thin_command configurable setting.
  - Use new default units 'r' for displaying sizes.
  - Also unmount mount point on top of MD device if using blkdeactivate -u.
  - Restore check preventing resize of cache type volumes (2.02.158).
  - Add missing udev sync when flushing dirty cache content.
  - vgchange -p accepts only uint32 numbers.
  - Report thin LV date for merged LV when the merge is in progress.
  - Detect if snapshot merge really started before polling for progress.
  - Checking LV for merging origin requires also it has merged snapshot.
  - Extend validation of metadata processing.
  - Enable usage of cached volumes as snapshot origin LV.
  - Fix displayed lv name when splitting snapshot (2.02.146).
  - Warn about command not making metadata backup just once per command.
  - Enable usage of cached volume as thin volume's external origin.
  - Support cache volume activation with -real layer.
  - Improve search of lock-holder for external origin and thin-pool.
  - Support status checking of cache volume used in layer.
  - Avoid shifting by one number of blocks when clearing dirty cache volume.
  - Extend metadata validation of external origin LV use count.
  - Fix dm table when the last user of active external origin is removed.
  - Improve reported lvs status for active external origin volume.
  - Fix table load for splitted RAID LV and require explicit activation.
  - Always active splitted RAID LV exclusively locally.
  - Do not use LV RAID status bit for segment status.
  - Check segtype directly instead of checking RAID in segment status.
  - Reusing exiting code for raid image removal.
  - Fix pvmove leaving -pvmove0 error device in clustered VG.
  - Avoid adding extra '_' at end of raid extracted images or metadata.
  - Optimize another _rmeta clearing code.
  - Fix deactivation of raid orphan devices for clustered VG.
  - Fix lvconvert raid1 to mirror table reload order.
  - Add internal function for separate mirror log preparation.
  - Fix segfault in lvmetad from missing NULL in daemon_reply_simple.
  - Simplify internal _info_run() and use _setup_task_run() for mknod.
  - Better API for internal function _setup_task_run.
  - Avoid using lv_has_target_type() call within lv_info_with_seg_status.
  - Simplify internal lv_info_with_seg_status API.
  - Decide which status is needed in one place for lv_info_with_seg_status.
  - Fix matching of LV segment when checking for it info status.
  - Report log_warn when status cannot be parsed.
  - Test segment type before accessing segment members when checking status.
  - Implement compatible target function for stripe segment.
  - Use status info to report merge failed and snapshot invalid lvs fields.
  - See WHATS_NEW and WHATS_NEW_DM in the documentation directory for more.


author: Marian Csontos <mcsontos@redhat.com> - 2.02.172-1
changelog:
  - Do not lvdisplay --maps unset settings of cache pool.
  - Fix lvdisplay --maps for cache pool without policy settings.
  - Support aborting of flushing cache LV.
  - Improve lvcreate --cachepool arg validation.
  - Cache format2 flag is now using segment name type field.
  - Disallow cachepool creation with policy cleaner and mode writeback.
  - Lvconvert --repair handles failing raid legs (present but marked 'D'ead).
  - Add display_percent helper function for printing percent values.
  - Add dm_percent_to_round_float for adjusted percentage rounding.
  - Fix lvcreate extent percentage calculation for mirrors.
  - Reenable conversion of data and metadata thin-pool volumes to raid.
  - Linear to RAID1 upconverts now use "recover" sync action, not "resync".
  - No longer necessary to '--force' a repair for RAID1.
  - Improve raid status reporting with lvs.
  - dm_get_status_raid() handle better some incosistent md statuses.
  - Limit maximal size of thin-pool for specific chunk size.
  - Print a warning about in-use PVs with no VG using them.
  - Disable automatic clearing of PVs that look like in-use orphans.
  - Extend validation of filesystems resized by fsadm.
  - Properly handle subshell return codes in fsadm.
  - Stop using '--yes' mode when fsadm runs without terminal.
  - Support storing status flags via segtype name field.
  - Enhance lvconvert automatic settings of possible (raid) LV types.
  - Add missing NULL to argv array when spliting cmdline arguments.
  - Don't reinstate still-missing devices when correcting inconsistent metadata.
  - Allow lvchange to change properties on a thin pool data sub LV.
  - Fix reusing of dm_task structure for status reading (used by dmeventd).
  - Drop unneeded --config option from raid dmeventd plugin.
  - Accept truncated files in calls to dm_stats_update_regions_from_fd().
  - Restore Warning by 5% increment when thin-pool is over 80% (1.02.138).
  - Reset array with dead rimage devices once raid gets in sync.


author: Marian Csontos <mcsontos@redhat.com> - 2.02.173-1
changelog:
  - Create /dev/disk/by-part{uuid,label} and gpt-auto-root symlinks with udev.
  - Add synchronization points with udev during conversion of raid LVs.
  - Improve --size args validation and report more detailed error message.
  - Initialize debugging mutex before any debug message in clvmd.
  - Log error instead of warn when noticing connection problem with lvmetad.
  - Fix memory leak in lvmetad when working with duplicates.
  - Remove restrictions on reshaping open and clustered raid devices.
  - Add incompatible data_offset to raid metadata to fix reshape activation.
  - Accept 'lvm -h' and 'lvm --help' as well as 'lvm help' for help.
  - Suppress error message from accept() on clean lvmetad shutdown.
  - Tidy clvmd client list processing and fix segfaults.
  - Protect clvmd debug log messages with mutex and add client id.
  - Fix shellcheck reported issues for script files.


author: Marian Csontos <mcsontos@redhat.com> - 2.02.174-1.f28
changelog:
  - NOTE: Deprecating python bindings and liblvm2app.
  - Prevent raid1 split with trackchanges in a shared VG.
  - Avoid double unlocking of client & lockspace mutexes in lvmlockd.
  - Fix leaking of file descriptor for non-blocking filebased locking.
  - Fix check for 2nd mda at end of disk fits if using pvcreate --restorefile.
  - Use maximum metadataarea size that fits with pvcreate --restorefile.
  - Always clear cached bootloaderarea when wiping label e.g. in pvcreate.
  - Disallow --bootloaderareasize with pvcreate --restorefile.
  - Fix lvmlockd check for running lock managers during lock adoption.
  - Add --withgeneralpreamble and --withlocalpreamble to lvmconfig.
  - Add warning when creating thin-pool with zeroing and chunk size >= 512KiB.
  - Introduce exit code 4 EINIT_FAILED to replace -1 when initialisation fails.
  - Add synchronization points with udev during reshape of raid LVs.
  - Restore umask when creation of node fails.
  - Add --concise to dmsetup create for many devices with tables in one command.
  - Accept minor number without major in library when it knows dm major number.
  - Introduce single-line concise table output format: dmsetup table --concise.


author: Marian Csontos <mcsontos@redhat.com> - 2.02.175-1
changelog:
  - Use --help with blockdev when checking for --getsize64 support in fsadm.
  - Dump lvmdbusd debug information with SIGUSR1.
  - Fix metadata corruption in vgsplit and vgmerge intermediate states.
  - Add PV_MOVED_VG PV status flag to mark PVs moving between VGs.
  - Fix lvmdbus hang and recognise unknown VG correctly.
  - Improve error messages when command rules fail.
  - Require LV name with pvmove in a shared VG.
  - Allow shared active mirror LVs with lvmlockd, dlm, and cmirrord.
  - Support lvconvert --repair with cache and cachepool volumes.
  - lvconvert --repair respects --poolmetadataspare option.
  - Fix thin pool creation in a shared VG. (2.02.173)
  - Schedule exit when received SIGTERM in dmeventd.
  - Fix blkdeactivate regression with failing DM/MD devs deactivation (1.02.142).
  - Add blkdeactivate -r wait option to wait for MD resync/recovery/reshape.
  - Use blkdeactivate -r wait in blk-availability systemd service/initscript.
  - Also try to unmount /boot on blkdeactivate -u if on top of supported device.
  - Fix typo in blkdeactivate's '--{dm,lvm,mpath}options' option name.
  - Correct return value testing when get reserved values for reporting.
  - Take -S with dmsetup suspend/resume/clear/wipe_table/remove/deps/status/table.
  - Fix mistakenly commented out %python_provide line for python3-lvm.


author: Marian Csontos <mcsontos@redhat.com> - 2.02.176-1
changelog:
  - Fix segfault in lvm_pv_remove in liblvm. (2.02.173)
  - Do not allow storing VG metadata with LV without any segment.
  - Fix printed message when thin snapshot was already merged.
  - Remove created spare LV when creation of thin-pool failed.
  - Avoid reading ignored metadata when MDA gets used again.
  - Fix detection of moved PVs in vgsplit. (2.02.175)
  - Ignore --stripes/--stripesize on RAID takeover
  - Disallow creation of snapshot of mirror/raid subLV (was never supported).
  - Keep Install section only in *.socket systemd units.
  - Improve used paths for generated systemd units and init shells.
  - Fix regression in more advanced vgname extraction in lvconvert (2.02.169).
  - Allow lvcreate to be used for caching of _tdata LV.
  - Avoid internal error when resizing cache type _tdata LV (not yet supported).
  - Show original converted names when lvconverting LV to pool volume.
  - Move lib code used only by liblvm into metadata-liblvm.c.
  - Distinguish between device not found and excluded by filter.
  - Monitor external origin LVs.
  - Allow lvcreate --type mirror to work with 100%FREE.
  - Improve selection of resource name for complex volume activation lock.
  - Avoid cutting first character of resource name for activation lock.
  - Support for encrypted devices in fsadm.
  - Improve thin pool overprovisioning and repair warning messages.
  - Fix incorrect adjustment of region size on striped RaidLVs.
  - Issue a specific error with dmsetup status if device is unknown.
  - Fix RT_LIBS reference in generated libdevmapper.pc for pkg-config.


author: Marian Csontos <mcsontos@redhat.com> - 2.02.177-1
changelog:
  - When writing text metadata content, use complete 4096 byte blocks.
  - Change text format metadata alignment from 512 to 4096 bytes.
  - When writing metadata, consistently skip mdas marked as failed.
  - Refactor and adjust text format metadata alignment calculation.
  - Fix python3 path in lvmdbusd to use value detected by configure.
  - Reduce checks for active LVs in vgchange before background polling.
  - Ensure _node_send_message always uses clean status of thin pool.
  - Fix lvmlockd to use pool lock when accessing _tmeta volume.
  - Report expected sanlock_convert errors only when retries fail.
  - Avoid blocking in sanlock_convert on SH to EX lock conversion.
  - Deactivate missing raid LV legs (_rimage_X-missing_Y_Z) on decativation.
  - Skip read-modify-write when entire block is replaced.
  - Categorise I/O with reason annotations in debug messages.
  - Allow extending of raid LVs created with --nosync after a failed repair.
  - Command will lock memory only when suspending volumes.
  - Merge segments when pvmove is finished.
  - Remove label_verify that has never been used.
  - Ensure very large numbers used as arguments are not casted to lower values.
  - Enhance reading and validation of options stripes and stripes_size.
  - Fix printing of default stripe size when user is not using stripes.
  - Activation code for pvmove automatically discovers holding LVs for resume.
  - Make a pvmove LV locking holder.
  - Do not change critical section counter on resume path without real resume.
  - Enhance activation code to automatically suspend pvmove participants.
  - Prevent conversion of thin volumes to snapshot origin when lvmlockd is used.
  - Correct the steps to change lock type in lvmlockd man page.
  - Retry lock acquisition on recognized sanlock errors.
  - Fix lock manager error codes in lvmlockd.
  - Remove unnecessary single read from lvmdiskscan.
  - Check raid reshape flags in vg_validate().
  - Add support for pvmove of cache and snapshot origins.
  - Avoid using precommitted metadata for suspending pvmove tree.
  - Ehnance pvmove locking.
  - Deactivate activated LVs on error path when pvmove activation fails.
  - Add "io" to log/debug_classes for logging low-level I/O.
  - Avoid importing persistent filter in vgscan/pvscan/vgrename.
  - Fix memleak of string buffer when vgcfgbackup runs in secure mode.
  - Do not print error when clvmd cannot find running clvmd.
  - Prevent start of new merge of snapshot if origin is already being merged.
  - Fix offered type for raid6_n_6 to raid5 conversion (raid5_n).
  - Deactivate sub LVs when removing unused cache-pool.
  - Do not take backup with suspended devices.
  - Avoid RAID4 activation on incompatible kernels under all circumstances.
  - Reject conversion request to striped/raid0 on 2-legged raid4/5.
  - Activation tree of thin pool skips duplicated check of pool status.
  - Remove code supporting replicator target.
  - Do not ignore failure of _info_by_dev().
  - Propagate delayed resume for pvmove subvolumes.
  - Suppress integrity encryption keys in 'table' output unless --showkeys supplied.


author: Marian Csontos <mcsontos@redhat.com> - 2.02.179-1
changelog:
  - Bugfix release mainly fixing known cache and lvmlockd issues.
  - Remove lvm1 and pool format handling and add filter to ignore them.
  - Rework disk scanning and when it is used.
  - Add new io layer using libaio for faster scanning.
  - Support activation of component LVs in read-only mode.
  - Avoid non-exclusive activation of exclusive segment types.
  - Restore pvmove support for clusterwide active volumes (2.02.177).
  - Add prioritized_section() to restore cookie boundaries (2.02.177).
  - Again accept striped LV as COW LV with lvconvert -s (2.02.169).
  - Restore usability of thin LV to be again external origin for another thin (2.02.169).
  - See WHATS_NEW and WHATS_NEW_DM in the documentation directory for more.


author: Tomas Orsava <torsava@redhat.com> - 2.02.179-3
changelog:
  - Switch hardcoded python3 path into the %{__python3} macro
  - Patch is needed for the configure file because it mistakenly unsets the user
    defined variable PYTHON before checking it


author: Marian Csontos <mcsontos@redhat.com> - 2.02.180-1
changelog:
  - Never send any discard ioctl with test mode.
  - Fix thin-pool alloc which needs same PV for data and metadata.
  - Enhance vgcfgrestore to check for active LVs in restored VG.
  - Provide possible layouts when converting between linear and striped/raid.
  - Fix unmonitoring of merging snapshots.
  - Cache can uses metadata format 2 with cleaner policy.
  - Avoid showing internal error in lvs output or pvmoved LVs.
  - Fix check if resized PV can also fit metadata area.
  - Reopen devices RDWR only before writing to avoid udev issues.
  - Change pvresize output confusing when no resize took place.
  - Fix lvmetad hanging on shutdown.
  - Fix mem leak in clvmd and more coverity issues.


author: Marian Csontos <mcsontos@redhat.com> - 2.02.181-1
changelog:
  - Reject conversions on raid1 LVs with split tracked SubLVs.
  - Reject conversions on raid1 split tracked SubLVs.
  - Fix dmstats list failing when no regions exist.
  - Reject conversions of LVs under snapshot.
  - Limit suggested options on incorrect option for lvconvert subcommand.
  - Add vdo plugin for monitoring VDO devices.


author: Marian Csontos <mcsontos@redhat.com> - 2.03.00-0.2
changelog:
  - New upstream release.
  - Deduplication and compression - support for VDO volumes.
  - Dropped lvmetad, clvmd and liblvm2app.


author: Marian Csontos <mcsontos@redhat.com> - 2.03.02-1
changelog:
  - Fix libdevmapper-event linking issue.
  - 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.


author: Marian Csontos <mcsontos@redhat.com> - 2.03.02-3
changelog:
  - Fix handling of exported VGs lvmdbusd.
  - Restore missing man info lvcreate --zero for thin-pools.
  - Drop misleadning comment for metadata minimum_io_size for VDO segment.
  - Ensure migration_threshold for cache is at least 8 chunks.


author: Marian Csontos <mcsontos@redhat.com> - 2.03.02-4
changelog:
  - Introduce LVM_SUPPRESS_SYSLOG to suppress syslog usage by generator.
  - Fix generator querying config options missing from lvm.conf.


author: Marian Csontos <mcsontos@redhat.com> - 2.03.02-6
changelog:
  * Thu Feb 07 2019 Marian Csontos <mcsontos@redhat.com> - 2.03.02-5
  - Improve -lXXX%VG modifier which improves cache segment estimation.


author: Marian Csontos <mcsontos@redhat.com> - 2.03.05-2
changelog:
  - Fix scanning of PVs with size not matching device.
  - Allow --stripe/--stripesize in mirror conversions.


author: Marian Csontos <mcsontos@redhat.com> - 2.03.05-3
changelog:
  - 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.


author: Marian Csontos <mcsontos@redhat.com> - 2.03.07-1
changelog:
  - 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.
  - Fix activation order when removing merged snapshot.
  - Experimental VDO support for lvmdbusd.
  - Correctly set read_ahead for LVs when pvmove is finished.
  - Add support for DM_DEVICE_GET_TARGET_VERSION into device_mapper.
  - Activate thin-pool layered volume as 'read-only' device.
  - Ignore crypto devices with UUID signature CRYPT-SUBDEV.
  - Synchronize with udev when dropping snapshot.
  - Add missing device synchronization point before removing pvmove node.
  - See WHATS_NEW for more.


author: Marian Csontos <mcsontos@redhat.com> - 2.03.08-1
changelog:
  - VDO and writecache volume improvements.
  - Prohibit reshaping of stacked raid LVs to prevent corruption.


author: Marian Csontos <mcsontos@redhat.com> - 2.03.09-1
changelog:
  - Fix support for lvconvert --repair of pools used by third party applications.
  - Fix formating of vdopool (vdo_slab_size_mb was smaller by 2 bits).
  - Fix busy loop in dmeventd.
  - Fix lvmlocks.service using incorrect option.


author: Marian Csontos <mcsontos@redhat.com> - 2.03.11-1
changelog:
  - Fix pvck handling MDA at offset different from 4096.
  - Partial or degraded activation of writecache is not allowed.
  - Enhance error handling in fsadm and handle correct fsck result.
  - Dmeventd lvm plugin ignores higher reserved_stack lvm.conf values.
  - Support using BLKZEROOUT for clearing devices.
  - Fixed interrup handling.
  - Fix block cache when device has too many failing writes.
  - Fix block cache waiting for IO completion with failing disks.
  - 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.
  - 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.
  - Allow pvmove of writecache origin.
  - Report integrity fields.
  - Integrity volumes defaults to journal mode.


author: Marian Csontos <mcsontos@redhat.com> - 2.03.11-2
changelog:
  - Fix problem with wiping of converted LVs.
  - Fix memleak in scanning.
  - Fix corner case allocation for thin-pools.


author: Marian Csontos <mcsontos@redhat.com> - 2.03.11-3
changelog:
  - Fix mpath filtering of NVMe devices.
  - Check if lvcreate passes read_only_volume_list with tags and skips zeroing.
  - Limit pool metadata spare to 16GiB.
  - Improves conversion and allocation of pool metadata.
  - Fix different limits used for metadata by lvm2 and thin-tools.
  - Fix interrupting lvconvert --splitcache command with striped origin volumes.


author: Marian Csontos <mcsontos@redhat.com> - 2.03.12-3
changelog:
  - Allow extending thin-pool data with writecache on top.
  - Fix removing thin-pool data converted to writeache.


author: Marian Csontos <mcsontos@redhat.com> - 2.03.12-4
changelog:
  - Fix conversion of writecache LVs to thin pool data volume.
  - Add deviceidtype option for lvmdevices.


author: Marian Csontos <mcsontos@redhat.com> - 2.03.12-6
changelog:
  - Fix handling of pmspare by vgsplit, vgmerge and vgremove.
  - Fix detection of active components of external origin volume.


author: Benjamin Marzinski <bmarzins@redhat.com> 0.8.4-33
changelog:
  - Add 0125-multipath-add-historical-service-time-to-the-man-pag.patch
    * Fixes bz #2141996
  - Modify tests/multipath_conf_syntax/main.sh
    * fix unrelated test error
  - Resolves: bz #2141996


author: Benjamin Marzinski <bmarzins@redhat.com> 0.8.4-34
changelog:
  - Add 0126-libmultipath-copy-mpp-hwe-from-pp-hwe.patch
    * Fixes bz #2126714
  - Cleanup multiple CI tests
  - Resolves: bz #2126714


author: Benjamin Marzinski <bmarzins@redhat.com> 0.8.4-35
changelog:
  - Add 0127-libmultipath-don-t-leak-memory-on-invalid-strings.patch
  - Add 0128-libmutipath-validate-the-argument-count-of-config-st.patch
  - Resolves: bz #2155560


author: Benjamin Marzinski <bmarzins@redhat.com> 0.8.4-36
changelog:
  - Add 0129-libmultipath-select-resize-action-even-if-reload-is-.patch
  - Add 0130-libmultipath-cleanup-ACT_CREATE-code-in-select_actio.patch
  - Add 0131-libmultipath-keep-renames-from-stopping-other-multip.patch
  - Resolves: bz #2166468


author: Benjamin Marzinski <bmarzins@redhat.com> 0.8.4-37
changelog:
  - Fix bugzilla linked to the changes (was previously linked to
    the wrong bug, 2162537)
  - Resolves: bz #2166468


author: Benjamin Marzinski <bmarzins@redhat.com> 0.8.4-38
changelog:
  - Add 0132-multipathd-make-pr-registration-consistent.patch
  - Add 0133-libmultipath-make-prflag-an-enum.patch
  - Add 0134-multipathd-handle-no-active-paths-in-update_map_pr.patch
  - Add 0135-libmpathpersist-fix-resource-leak-in-update_map_pr.patch
  - Resolves: bz #2164871


author: Benjamin Marzinski <bmarzins@redhat.com> 0.8.4-39
changelog:
  - Add OSCI tests directory
  - Make kpartx_id installation location relative to /usr/lib/udev/rules.d
  - Resolves: bz #2164871


author: Benjamin Marzinski <bmarzins@redhat.com> 0.8.4-40
changelog:
  - Add 0136-multipathd-Added-support-to-handle-FPIN-Li-events-fo.patch
    * Add support in multipathd for NVMe to listen for FPIN-Li events and
      mark effected paths as marginal
  - Resolves: RHEL-6677


author: zhangwenlong <zhangwenlong@loongson.cn> 0.8.4-41.0.1
changelog:
  - Add loongarch64 support for device-mapper-multipath
  - cherry-pick `fix the problem comparison of integer expressions of different signedness`.(Weisson@linux.alibaba.com)
  - modify OPTFLAGS for sw_64.(Weisson@linux.alibaba.com)


author: Peter Jones <pjones@redhat.com> - 0.4.7-4.1
changelog:
  - Split kpartx out into its own package so dmraid can use it without
    installing multipathd
  - Fix a segfault in kpartx


author: Benjamin Marzinski <bmarzins@redhat.com> 0.4.8-1
changelog:
  - Updated to latest Upstream 0.4.8 code: multipath-tools-080519.tgz
    (git commit id: 42704728855376d2f7da2de1967d7bc71bc54a2f)


author: Benjamin Marzinski <bmarzins@redhat.com> 0.4.8-6
changelog:
  - Updated to latest upstream 0.4.8 code: multipath-tools-080804.tgz
    (git commit id: eb87cbd0df8adf61d1c74c025f7326d833350f78)
  - fixed 451817, 456397 (scsi_id_change.patch), 457530 (config_space_fix.patch)
    457589 (static_libaio.patch)


author: Benjamin Marzinski <bmarzins@redhat.com> 0.4.8-7
changelog:
  - Since libaio is now in /lib, not /usr/lib, multipath no longer needs to
    statically link against it. Fixed an error with binding file and WWIDs
    that include spaces. Cleaned up the messages from the directio checker
    function.  Fixed the udev rules. Fixed a regression in multipath.conf
    parsing
  - Fixed 457530, 457589


author: Mike Snitzer <snitzer@redhat.com> - 0.4.9-1
changelog:
  - Updated to latest upstream 0.4.9 code: multipath-tools-090429.tgz
    (git commit id: 7395bcda3a218df2eab1617df54628af0dc3456e)
  - split the multipath libs out to a device-mapper-multipath-libs package
  - if appropriate, install multipath libs in /lib64 and /lib64/multipath


author: Benjamin Marzinski <bmarzins@redhat.com> - 0.4.9-3
changelog:
  - Updated to latest upstream 0.4.9 code : multipath-tools-090729.tgz
    (git commit id: d678c139719d5631194b50e49f16ca97162ecd0f)
  - moved multipath bindings file from /var/lib/multipath to /etc/multipath
  - Fixed 354961, 432520


author: Benjamin Marzinski <bmarzins@redhat.com> - 0.4.9-5
changelog:
  - Fixed problem where maps were being added and then removed.
  - Changed the udev rules to fix some issues.


author: Fabio M. Di Nitto <fdinitto@redhat.com> - 0.4.9-6
changelog:
  - Updated to latest upstream 0.4.9 code : multipath-tools-091013.tar.gz
    (git commit id: aa0a885e1f19359c41b63151bfcface38ccca176)
  - Drop, now upstream, patches:
    * fix_missed_uevs.patch.
    * log_all_messages.patch.
    * uninstall.patch.
    * select_lib.patch.
    * directio_message_cleanup.patch.
    * stop_warnings.patch.
  - Drop redhatification.patch in favour of spec file hacks.
  - Drop mpath_wait.patch: no longer required.
  - Merge multipath_rules.patch and udev_change.patch.
  - Rename all patches based on source.
  - Add patch 0009-RH-fix-hp-sw-hardware-table-entries.patch to fix
    default entry for hp_sw and match current kernel.
  - Add multipath.conf.redhat as source instead of patch.
  - spec file:
    * divide runtime and build/setup bits.
    * update BuildRoot.
    * update install section to apply all the little hacks here and there,
      in favour of patches against upstream.
    * move ldconfig invokation to libs package where it belong.
    * fix libs package directory ownership and files.


author: Fabio M. Di Nitto <fdinitto@redhat.com> - 0.4.9-7
changelog:
  - Add patch 0010-RH-Set-friendly-defaults.patch:
    * set rcdir to fedora default.
    * do not install kpartx udev bits.
    * install redhat init script.
    * Cleanup spec file install target.
  - Add patch 0011-RH-multipathd-blacklist-all-by-default.patch:
    * Fix BZ#528059
    * Stop installing default config in /etc and move it to the doc dir.


author: Fabio M. Di Nitto <fdinitto@redhat.com> - 0.4.9-8
changelog:
  - Split patches in "for-upstream" and "RH" series.
  - Replace 0011-RH-multipathd-blacklist-all-by-default.patch with
    version from Benjamin Marzinski.
  - Update udev rules 0010-RH-multipath-rules-udev-changes.patch.
  - rpmlint cleanup:
    * Drop useless-provides kpartx.
    * Cleanup tab vs spaces usage.
    * Summary not capitalized.
    * Missing docs in libs package.
    * Fix init script LSB headers.
  - Drop README* files from doc sections (they are empty).


author: Fabio M. Di Nitto <fdinitto@redhat.com> - 0.4.9-10
changelog:
  - Updated to latest upstream 0.4.9 code : multipath-tools-091027.tar.gz
    (git commit id: a946bd4e2a529e5fba9c9547d03d3f91806618a3)
  - Drop unrequired for-upstream patches.
  - BuildRequires and Requires new device-mapper version for udev sync support.


author: Benjamin Marzinski <bmarzins@redhat.com> -0.4.9-11
changelog:
  - Add 0002-for-upstream-add-tmo-config-options.patch
    * Add fail_io_fail_tmo and dev_loss_tmo multipath.conf options
  - Add 0013-RH-add-weighted_prio-prioritizer.patch
  - Add 0014-RH-add-hp_tur-checker.patch
  - Add 0015-RH-add-multipathd-count-paths-cmd.patch
  - rename multipath.conf.redhat to multipath.conf, and remove the default
    blacklist.


author: Benjamin Marzinski <bmarzins@redhat.com> -0.4.9-12
changelog:
  - Refresh 0001-RH-queue-without-daemon.patch
  - Refresh 0002-RH-path-checker.patch
  - Modify 0010-RH-multipath-rules-udev-changes.patch
    * Fix udev rules to use DM_SBIN_PATH when calling kpartx
    * install udev rules to /lib/udev/rules.d instead of /etc/udev/rules.d
  - Modify 0014-RH-add-hp_tur-checker.patch
  - Add 0003-for-upstream-default-configs.patch
  - Add 0016-RHBZ-554561-fix-init-error-msg.patch
  - Add 0017-RHBZ-554592-man-page-note.patch
  - Add 0018-RHBZ-554596-SUN-6540-config.patch
  - Add 0019-RHBZ-554598-fix-multipath-locking.patch
  - Add 0020-RHBZ-554605-fix-manual-failover.patch
  - Add 0021-RHBZ-548874-add-find-multipaths.patch
    * Added find_multipaths multipath.conf option
    * Added /sbin/mpathconf for simple editting of multipath.conf
  - Add 0022-RHBZ-557845-RHEL5-style-partitions.patch
    * Make kpartx deal with logical partitions like it did in RHEL5.
      Don't create a dm-device for the extended partition itself.
      Create the logical partitions on top of the dm-device for the whole disk.


author: Benjamin Marzinski <bmarzins@redhat.com> -0.4.9-13
changelog:
  - Replace 0012-RH-explicitly-disable-dm-udev-sync-support-in-kpartx.patch
    with 0012-RH-udev-sync-support.patch
    * Add udev sync support to kpartx and multipath. In kpartx it is disabled
      unless you use the -s option.
  - Refresh 0013-RH-add-weighted_prio-prioritizer.patch
  - Refresh 0021-RHBZ-548874-add-find-multipaths.patch
  - Modify 0022-RHBZ-557845-RHEL5-style-partitions.patch
    * kpartx now creates a 2 sector large device for dos extended
      partitions, just like the kernel does on the regular block devices.
  - Add 0023-RHBZ-557810-emc-invista-config.patch
  - Add 0024-RHBZ-565933-checker-timeout.patch
    * Multipath has a new option checker_timeout. If this is not set, 
      all path checker functions with explicit timeouts use
      /sys/block/sd<x>/device/timeout. If this is set, they use it instead.


author: Benjamin Marzinski <bmarzins@redhat.com> -0.4.9-14
changelog:
  - Modify 0021-RHBZ-548874-add-find-multipaths.patch
    * fix bug where mpathconf wouldn't create a multpath.conf file unless one
      already existed.


author: Benjamin Marzinski <bmarzins@redhat.com> -0.4.9-16
changelog:
  - Modify 0012-RH-udev-sync-support.patch
  - Modify 0021-RHBZ-548874-add-find-multipaths.patch
  - Modify 0022-RHBZ-557845-RHEL5-style-partitions.patch
  - Add 0025-RHBZ-508827-update-multipathd-manpage.patch through
        0101-RHBZ-631009-disable-udev-disk-rules-on-reload.patch
    * sync with current state of RHEL6. Next release should include a updated
      source tarball with most of these fixes rolled in.
  - Add 0102-RHBZ-690828-systemd-unit-file.patch
    * Add Jóhann B. Guðmundsson's unit file for systemd.
    * Add sub-package sysvinit for SysV init script.
  - Resolves: bz #690828


author: Benjamin Marzinski <bmarzins@redhat.com> -0.4.9-17
changelog:
  - Add 0103-add-disable-sync-option.patch
    * add a -n (nosync) option to multipath. This disables synchronous
      file creation with udev.


author: Benjamin Marzinski <bmarzins@redhat.com> -0.4.9-19
changelog:
  - Modify 0103-add-disable-sync-option.patch
  - Add 0104-RHBZ-737989-systemd-unit-fix.patch
    * systemd will only start multipathd if /etc/multipath.conf exists
  - Add 0105-fix-oom-adj.patch
    * first try setting oom_score_adj


author: Benjamin Marzinski <bmarzins@redhat.com> 0.4.9-21
changelog:
  - Updated to latest upstream 0.4.9 code : multipath-tools-120123.tgz
    (git commit id: 63704387009443bdb37d9deaaafa9ab121d45bfb)
  - Add 0001-RH-fix-async-tur.patch
  - Add 0002-RH-dont_start_with_no_config.patch
  - Add 0003-RH-multipath.rules.patch
  - Add 0004-RH-update-init-script.patch
  - Add 0005-RH-cciss_id.patch
  - Add 0006-RH-Make-build-system-RH-Fedora-friendly.patch
  - Add 0007-RH-multipathd-blacklist-all-by-default.patch
  - Add 0008-RH-add-mpathconf.patch
  - Add 0009-RH-add-find-multipaths.patch
  - Add 0010-RH-check-if-multipath-owns-path.patch
  - Add 0011-RH-add-hp_tur-checker.patch


author: Benjamin Marzinski <bmarzins@redhat.com> 0.4.9-22
changelog:
  - Add 0012-RH-update-on-show-topology.patch
  - Add 0013-RH-manpage-update.patch
  - Add 0014-RH-RHEL5-style-partitions.patch
  - Add 0015-RH-add-followover.patch
  - Add 0016-RH-dont-remove-map-on-enomem.patch
  - Add 0017-RH-fix-shutdown-crash.patch
  - Add 0018-RH-warn-on-bad-dev-loss-tmo.patch
  - Add 0019-RH-deprecate-uid-gid-mode.patch
  - Add 0020-RH-dont-remove-map-twice.patch
  - Add 0021-RH-validate-guid-partitions.patch
  - Add 0022-RH-adjust-messages.patch
  - Add 0023-RH-manpage-update.patch


author: Benjamin Marzinski <bmarzins@redhat.com> 0.4.9-27
changelog:
  - Updated to latest upstream 0.4.9 code : multipath-tools-120613.tgz
    (git commit id: cb0f7127ba90ab5e8e71fc534a0a16cdbe96a88f)
  - Add 0001-RH-remove_callout.patch
    * multipath no longer uses the getuid callout.  It now gets the
      wwid from the udev database or the environment variables
  - Add 0004-RH-fix-cciss-names.patch
    * convert cciss device names from cciss/cXdY to sysfs style cciss!cXdY
  - Split 0009-RH-add-find-multipaths.patch into 0002-RH-add-wwids-file.patch
          and 0010-RH-add-find-multipaths.patch
  - Add 0016-RH-change-configs.patch
    * default fast_io_fail to 5 and don't set the path selector in the
      builtin configs.
  Resolves: bz #831978


author: Benjamin Marzinski <bmarzins@redhat.com> 0.4.9-29
changelog:
  - Updated to latest upstrem 0.4.9 code: multipath-tools-120821.tgz
    (git commit id: 050b24b33d3c60e29f7820d2fb75e84a9edde528)
    * includes 0001-RH-remove_callout.patch, 0002-RH-add-wwids-file.patch,
      0003-RH-add-followover.patch, 0004-RH-fix-cciss-names.patch
  - Add 0013-RH-kpartx-msg.patch
  - Modify 0002-RH-multipath.rules.patch
    * removed socket call from rules file


author: Benjamin Marzinski <bmarzins@redhat.com> 0.4.9-31
changelog:
  - Add 0014-RH-dm_reassign.patch
    * Fix reassign_maps option
  - Add 0015-RH-selector_change.patch
    * devices default to using service-time selector
  - Add 0016-RH-retain_hwhandler.patch
    * add retain_attached_hw_handler option, to let multipath keep an
      already attached scsi device handler
  - Add 0017-RH-netapp_config.patch
  - Add 0018-RH-remove-config-dups.patch
    * Clean up duplicates in the devices and blacklist sections


author: Benjamin Marzinski <bmarizns@redhat.com> 0.4.9-32
changelog:
  - Modified 0018-RH-remove-config-dups.patch
    * Made modified config remove original only if the vendor/product
      exactly match


author: Benjamin Marzinski <bmarizns@redhat.com> 0.4.9-33
changelog:
  - Modify 0016-RH-retain_hwhandler.patch
    * Check the dm-multipath module version, and don't enable
      retain_attached_hw_handler if the kernel doesn't support it
  - Add 0019-RH-detect-prio.patch
    * add detect_prio option, to make multipath check if the device
      supports the ALUA prio, before defaulting to the configured prio
  - Remove 0017-RH-netapp_config.patch
  - Add 0020-RH-netapp-config.patch
    * new netapp config that uses retain_attached_hw_handler and
      detect_prio to autoconfigure ALUA and non-ALUA devices.


author: Benjamin Marzinski <bmarizns@redhat.com> 0.4.9-35
changelog:
  - Add 0022-RHBZ-864368-disable-libdm-failback.patch
    * make kpartx and multiapthd disable libdm failback device creation
  - Add 0023-RHBZ-866291-update-documentation.patch
  - Resolves: bz #864368, #866291


author: Benjamin Marzinski <bmarizns@redhat.com> 0.4.9-38
changelog:
  - Add 0026-RH-fix-mpathpersist-fns.patch
  - Add 0027-RH-default-partition-delimiters.patch
    * Only use the -p delimiter when the device name ends in a number
  - Add 0028-RH-storagetek-config.patch
  - Add 0029-RH-kpartx-retry.patch
    * retry delete on busy loop devices
  - Add 0030-RH-early-blacklist.patch
    * multipath will now blacklist devices by device type and wwid in
      store_pathinfo, so that it doesn't do a bunch of unnecessary work
      on paths that it would only be removing later on.


author: Benjamin Marzinski <bmarizns@redhat.com> 0.4.9-40
changelog:
  - Add 0032-RH-make-path-fd-readonly.patch
    * revert change made when adding persistent reservations, so that path fds
      are again opened O_RDONLY


author: Benjamin Marzinski <bmarizns@redhat.com> 0.4.9-41
changelog:
  - Add 0033-RH-dont-disable-libdm-failback-for-sync-case.patch
    * make kpartx -s and multipath use libdm failback device creation, so
      that they work in environments without udev


author: Benjamin Marzinski <bmarizns@redhat.com> 0.4.9-42
changelog:
  - Add 0034-RHBZ-887737-check-for-null-key.patch
  - Add 0035-RHBZ-883981-cleanup-rpmdiff-issues.patch
    * Compile multipathd with full RELRO and PIE and install to /usr


author: Benjamin Marzinski <bmarzins@redhat.com> 0.4.9-44
changelog:
  - Add 0036-UP-fix-state-handling.patch
    * handle transport-offline and quiesce sysfs state
  - Add 0037-UP-fix-params-size.patch
  - Add 0038-RH-fix-multipath.rules.patch
    * make sure multipath's link priority gets increased
  - Add 0039-RH-handle-other-sector-sizes.patch
    * allow gpt partitions on 4k sector size block devices.
  - Add 0040-RH-fix-output-buffer.patch
    * fix multipath -ll for large configuration.


author: Benjamin Marzinski <bmarzins@redhat.com> 0.4.9-45
changelog:
  - Updated to latest upstrem 0.4.9 code: multipath-tools-130222
    (git commit id: 67b82ad6fe280caa1770025a6bb8110b633fa136)
  - Refresh 0001-RH-dont_start_with_no_config.patch
  - Modify 0002-RH-multipath.rules.patch
  - Modify 0003-RH-Make-build-system-RH-Fedora-friendly.patch
  - Refresh 0004-RH-multipathd-blacklist-all-by-default.patch
  - Refresh 0005-RH-add-mpathconf.patch
  - Refresh 0006-RH-add-find-multipaths.patch
  - Add 0008-RH-revert-partition-changes.patch
  - Rename 0008-RH-RHEL5-style-partitions.patch to
  	 0009-RH-RHEL5-style-partitions.patch
  - Rename 0009-RH-dont-remove-map-on-enomem.patch to
  	 0010-RH-dont-remove-map-on-enomem.patch
  - Rename 0010-RH-deprecate-uid-gid-mode.patch to
  	 0011-RH-deprecate-uid-gid-mode.patch
  - Rename 0013-RH-kpartx-msg.patch to 0012-RH-kpartx-msg.patch
  - Rename 0035-RHBZ-883981-cleanup-rpmdiff-issues.patch to
           0013-RHBZ-883981-cleanup-rpmdiff-issues.patch
  - Rename 0039-RH-handle-other-sector-sizes.patch to
  	 0014-RH-handle-other-sector-sizes.patch
  - Rename 0040-RH-fix-output-buffer.patch to 0015-RH-fix-output-buffer.patch
  - Add 0016-RH-dont-print-ghost-messages.patch
  - Add 0017-RH-fix-sigusr1.patch
    * Actually this fixes a number of issues related to signals
  - Rename 0018-RH-remove-config-dups.patch to 0018-RH-fix-factorize.patch
    * just the part that isn't upstream
  - Add 0019-RH-fix-sockets.patch
    * makes abstract multipathd a cli sockets use the correct name.
  - Set find_multipaths in the default config


author: Benjamin Marzinski <bmarzins@redhat.com> 0.4.9-46
changelog:
  - Add 0020-RHBZ-907360-static-pthread-init.patch
    * statically initialize the uevent pthread structures


author: Benjamin Marzinski <bmarzins@redhat.com> 0.4.9-47
changelog:
  - Add 0021-RHBZ-919119-respect-kernel-cmdline.patch
    * keep the multipath.rules udev file from running and multipathd from
      starting if nompath is on the kernel command line
  - Add 0022-RH-multipathd-check-wwids.patch
    * Whenever multipath runs configure, it will check the wwids, and
      add any missing ones to the wwids file
  - Add 0023-RH-multipath-wipe-wwid.patch
    * multipath's -w command will remove a wwid from the wwids file
  - Add 0024-RH-multipath-wipe-wwids.patch
    * multipath's -W command will set reset the wwids file to just the current
      devices
  - Add 0025-UPBZ-916668_add_maj_min.patch
  - Resolves: bz #919119


author: Benjamin Marzinski <bmarzins@redhat.com> 0.4.9-48
changelog:
  - Add 0026-fix-checker-time.patch
    * Once multipathd hit it max checker interval, it was reverting to
      to shortest checker interval
  - Add 0027-RH-get-wwid.patch
    * Multipath wasn't correctly setting the multipath wwid when it read devices
      in from the kernel
  - Add 0028-RHBZ-929078-refresh-udev-dev.patch
    * Make multipath try to get the UID of down devices.  Also, on ev_add_path,
      make multipathd reinitialize existing devices that weren't fully
      initialized before.


author: Benjamin Marzinski <bmarzins@redhat.com> 0.4.9-49
changelog:
  - Modify 0020-RHBZ-907360-static-pthread-init.patch
    * Don't initialize uevent list twice
  - Add 0029-RH-no-prio-put-msg.patch
  - Add 0030-RHBZ-916528-override-queue-no-daemon.patch
    * Default to "queue_without_daemon no"
    * Add "forcequeueing daemon" and "restorequeueing daemon" cli commands
  - Modify spec file to force queue_without_daemon when restarting
    multipathd on upgrades.


author: Benjamin Marzinski <bmarzins@redhat.com> 0.4.9-50
changelog:
  - Add 0031-RHBZ-957188-kpartx-use-dm-name.patch
    * use the basename of the devices that will be created to choose the
      delimiter instead of using the device name from the command line
  - Resolves: bz #957188


author: Benjamin Marzinski <bmarzins@redhat.com> 0.4.9-51
changelog:
  - Add 0032-RHBZ-956464-mpathconf-defaults.patch
    * fix defaults listed in usage
  - Add 0033-RHBZ-829963-e-series-conf.patch
  - Add 0034-RHBZ-851416-mpathconf-display.patch
    * display whether or not multipathd is running in the status
  - Add 0035-RHBZ-891921-list-mpp.patch
    * add a new path format wilcard to list the multipath device associated
      with a path
  - Add 0036-RHBZ-949239-load-multipath-module.patch
    * load the dm-multipath kernel module when multipathd starts
  - Add 0037-RHBZ-768873-fix-rename.patch
    * When deciding on a multipth devices name on reload, don't default to
      the existing name if there is no config file alias and user_friendly_names
      isn't set. Use the wwid.
  - Modify multipath.conf
  - Resolves: bz #768873, #950252


author: Benjamin Marzinski <bmarzins@redhat.com> 0.4.9-52
changelog:
  - Add 0038-RHBZ-799860-netapp-config.patch
  - Add 0039-RH-detect-prio-fix.patch
    * Don't autodetect ALUA prioritizer unless it actually can get a priority
  - Add 0040-RH-bindings-fix.patch
    * Do a better job of trying to get the first free user_friendly_name
  - Add 0041-RH-check-for-erofs.patch
    * Don't create/reload a device read-only unless doing it read/write fails
      with EROFS
  - Remove 0017-RH-fix-sigusr1.patch
    * fix signal handling upstream way instead
  - Add 0042-UP-fix-signal-handling.patch
    * uxlsnr now handles all the signals sent to multipathd. This makes its
      signal handling posix compliant, and harder to mess up.
  - Add 0043-RH-signal-waiter.patch
    * ioctl isn't a pthread cancellation point.  Send a signal to the waiter
      thread to break out of waiting in ioctl for a dm event.


author: Benjamin Marzinski <bmarzins@redhat.com> 0.4.9-53
changelog:
  - Add 0044-RHBZ-976688-fix-wipe-wwids.patch
    * Seek back to the start of the file after truncating it
  - Add 0045-RHBZ-977297-man-page-fix.patch
    * update man page to match actual defaults
  - Add 0046-RHBZ-883981-move-udev-rules.patch
    * move udev rules file from /lib to /usr/lib
  - Resolves: bz #883981, #976688, #977297


author: Benjamin Marzinski <bmarzins@redhat.com> 0.4.9-54
changelog:
  - Add 0047-RHBZ-980777-kpartx-read-only-loop-devs.patch
    * make kpartx support read-only files better
  - Resolves: bz #980777


author: Benjamin Marzinski <bmarzins@redhat.com> 0.4.9-55
changelog:
  - Modify 0015-RH-fix-output-buffer.patch
    * Fix memory leak
  - Add 0047-RHBZ-kpartx-read-only-loop-devs.patch
    * Fix read only loop device handling
  - Add 0048-RH-print-defaults.patch
  - Add 0049-RH-remove-ID_FS_TYPE.patch
    * remove ID_FS_TYPE udev enviroment variable for multipath devices
  - Add 0051-UP-fix-cli-resize.patch
    * check before dereferencing variables
  - Add 0052-RH-fix-bad-derefs.patch
    * setup multipath free the multipath device when it fails, so don't keep
      using it.
  - Add 0053-UP-fix-failback.patch
    * setting failback in the devices section was broken
  - Add 0054-UP-keep-udev-ref.patch
    * multipathd needs to keep the same udev object across reconfigures
  - Add 0055-UP-handle-quiesced-paths.patch
    * quiesced paths should be treated as down
  - Add 0056-UP-alua-prio-fix.patch
    * Don't count the preferred bit for paths that are active/optimized
  - Add 0057-UP-fix-tmo.patch
    * Cleanup how multipath sets dev_loss_tmo and fast_io_fail_tmo.  Also
      make multipath get changing values directly from sysfs, instead of
      from udev, which caches them.
  - Add 0058-UP-fix-failback.patch
    * make failback print the default value when you show configs.
  - Add 0059-UP-flush-failure-queueing.patch
    * If you can't flush a multipath device, restore the queue_if_no_paths
      value
  - Add 0060-UP-uevent-loop-udev.patch
    * make ueventloop grab it's own udev reference, since it is cancelled
      asychnrously.


author: Benjamin Marzinski <bmarzins@redhat.com> 0.4.9-56
changelog:
  - Add 0061-RH-display-find-mpaths.patch
    * display the find_multipaths value in show config
  - Add 0062-RH-dont-free-vecs.patch
    * don't free the vecs structure on shutdown. It's more pain than
      it's worth.


author: Benjamin Marzinski <bmarzins@redhat.com> 0.4.9-57
changelog:
  - Add 0063-RH-fix-warning.patch
    * Fix complier warning
  - 0064-fix-ID_FS-attrs.patch
    * make multipath create a timestamp file /run/multipathd/timestamp, and
      add -T<timestamp>:<valid> option to shortcut processing if the
      timestamp hasn't changed


author: Benjamin Marzinski <bmarzins@redhat.com> 0.4.9-58
changelog:
  - Add 0065-UPBZ-995538-fail-rdac-on-unavailable.patch
    * make rdac checker always mark paths with asymmetric access state of
      unavailable as down


author: Benjamin Marzinski <bmarzins@redhat.com> 0.4.9-59
changelog:
  - Add 0066-UP-dos-4k-partition-fix.patch
    * Make kpartx correctly handle 4K sector size devices with dos partitions.


author: Benjamin Marzinski <bmarzins@redhat.com> 0.4.9-60
changelog:
  - Add 0067-RHBZ-1022899-fix-udev-partition-handling.patch
    * Make sure to wipe partition devices on change event if they weren't
      wiped on the device add event
  - Add 0068-RHBZ-1034578-label-partition-devices.patch
    * Make sure that partition devices are labeled like the whole device
  - Add 0069-UPBZ-1033791-improve-rdac-checker.patch
    *  Use RTPG data in RDAC checker
  - Add 0070-RHBZ-1036503-blacklist-td-devs.patch
  - Add 0071-RHBZ-1031546-strip-dev.patch
    * make multipathd interactive commands able to handle /dev/<devnode>
      instead of just <devnode>


author: Benjamin Marzinski <bmarzins@redhat.com> 0.4.9-61
changelog:
  - Add 0072-RHBZ-1039199-check-loop-control.patch
    * Make kpartx use LOOP_CTL_GET_FREE and loop-control to find a free
      loop device. This will autoload the loop module.


author: Benjamin Marzinski <bmarzins@redhat.com> 0.4.9-62
changelog:
  - Modify 0072-RHBZ-1039199-check-loop-control.patch
    * only call close on the /dev/loop-control fd the open succeeds
  - Add 0073-RH-update-build-flags.patch
    * fix print call to work with -Werror=format-security compile flag


author: Benjamin Marzinski <bmarzins@redhat.com> 0.4.9-63
changelog:
  - Add 0074-RHBZ-1056976-dm-mpath-rules.patch
    * Add rules to keep from doing work in udev if there are no
      active paths, or if the event was for a multipath device
      reloading its table due to a path change.
  - Add 0075-RHBZ-1056976-reload-flag.patch
    * multipath code to identify reloads that the new rules can
      ignore
  - Add 0076-RHBZ-1056686-add-hw_str_match.patch
    * add a new default config paramter, "hw_str_match", to make user
      device configs only overwrite builtin device configs if the
      identifier strings match exactly, like the default in RHEL6.


author: Benjamin Marzinski <bmarzins@redhat.com> 0.4.9-64
changelog:
  - Modify 0076-RHBZ-1056686-add-hw_str_match.patch
    * free temporary memory used during configuration
  - Add 0078-RHBZ-1054044-fix-mpathconf-manpage.patch
    * fix typo
  - Add 0079-RHBZ-1070581-add-wwid-option.patch
    * add multipath option "-a". To add a device's wwid to the wwids file
  - Add 0080-RHBZ-1075796-cmdline-wwid.patch
    * add multipath option "-A" to add wwids specified by the kernel
      command line mapth.wwid options.


author: Benjamin Marzinski <bmarzins@redhat.com> 0.4.9-68
changelog:
  - Modify multipath.conf
    * remove getuid_callout example
  - Re-add 0050-RH-listing-speedup.patch
  - Add 0081-RHBZ-1066264-check-prefix-on-rename.patch
    * make multipath check the prefix on kpartx partitions during rename, and
      copy the existing behaviour
  - Add 0082-UPBZ-1109995-no-sync-turs-on-pthread_cancel.patch
    * If async tur checker fails on threads, don't retry with the sync version
  - Add 0083-RHBZ-1080055-orphan-paths-on-reload.patch
    * Fix case where pathlist wasn't getting updated properly
  - Add 0084-RHBZ-1110000-multipath-man.patch
    * fix errors in multipath man page
  - Add 0085-UPBZ-1110006-datacore-config.patch
    * Add support for DataCore Virtual Disk
  - Add 0086-RHBZ-1110007-orphan-path-on-failed-add.patch
    * If multipathd fails to add path correctly, it now fully orphans the path
  - Add 0087-RHBZ-1110013-config-error-checking.patch
    * Improve multipath.conf error checking.
  - Add 0088-RHBZ-1069811-configurable-prio-timeout.patch
    * checker_timeout now adjusts the timeouts of the prioritizers as well.
  - Add 0089-RHBZ-1110016-add-noasync-option.patch
    * Add a new defaults option, "force_sync", that disables the async mode
      of the path checkers. This is for cases where to many parallel checkers
      hog the cpu
  - Add 0090-UPBZ-1080038-reorder-paths-for-round-robin.patch
    * make multipathd order paths for better throughput in round-robin mode
  - Add 0091-RHBZ-1069584-fix-empty-values-fast-io-fail-and-dev-loss.patch
    * check for null pointers in configuration reading code.
  - Add 0092-UPBZ-1104605-reload-on-rename.patch
    * Reload table on rename if necessary
  - Add 0093-UPBZ-1086825-user-friendly-name-remap.patch
    * Keep existing user_friend_name if possible
  - Add 0094-RHBZ-1086825-cleanup-remap.patch
    * Cleanup issues with upstream patch
  - Add 0095-RHBZ-1127944-xtremIO-config.patch
    * Add support for EMC ExtremIO devices
  - Add 0096-RHBZ-979474-new-wildcards.patch
    * Add N, n, R, and r path wildcards to print World Wide ids
  - Add 0097-RH-fix-coverity-errors.patch
    * Fix a number of unterminated strings and memory leaks on failure
      paths.
  - Add 0098-UPBZ-1067171-mutipath-i.patch
    * Add -i option to ignore wwids file when checking for valid paths
  - Add 0099-RH-add-all-devs.patch
    * Add new devices config option all_devs. This makes the configuration
      overwrite the specified values in all builtin configs
  - Add 0100-RHBZ-1067171-multipath-i-update.patch
    * make -i work correctly with find_multipaths
  - Add 0101-RH-adapter-name-wildcard.patch
    * Add 'a' path wildcard to print adapter name


author: Benjamin Marzinski <bmarzins@redhat.com> 0.4.9-70
changelog:
  - Add 0102-RHBZ-1160478-mpathconf-template.patch
    * mpathconf no longer copies the default config template for the
      docs directory.  It simply writes the template itself.
  - Resolves: bz# 1160478


author: Benjamin Marzinski <bmarzins@redhat.com> 0.4.9-71
changelog:
  - Add 0103-RH-cleanup-partmaps-code.patch
    * code refactoring to prepare for next patch
  - Add 0104-RHBZ-631009-deferred-remove.patch
    * add deferred_remove option to /etc/multipath.conf
  - Add 0105-RHBZ-1148979-fix-partition-mapping-creation-race-with-kpartx.patch
    * Only run kpartx on device activation
  - Add 0106-RHBZ-1159337-fix-double-free.patch
    * made ev_remove_path exit immediately after failing setup_multipath, since
      it handles cleaning up the device
  - Add 0107-RHBZ-1169935-no-new-devs.patch
    * Add new multipathd option '-n' which keeps multipathd from creating any
      multipath devices that aren't in the /etc/multipath/wwids file.
  - Add 0108-RHBZ-1153832-kpartx-remove-devs.patch
    * switch from 'kpartx -a' to 'kpartx -u' to remove missing devices as well.
  - Add 0109-RH-read-only-bindings.patch
    * re-enabled -B option for multipathd


author: Benjamin Marzinski <bmarzins@redhat.com> 0.4.9-72
changelog:
  - Modify 0107-RHBZ-1169935-no-new-devs.patch
    * instead of using "-n" there is now a new configuration option,
      'ignore_new_boot_devs'. If set to 'yes', multipath will ignore
      devices that aren't in /etc/multipath/wwids when running in the
      initramfs. This option does nothing while multipathd is running
      in the real root filesystem.
  - Update 0109-RH-read-only-bindings.patch


author: Benjamin Marzinski <bmarzins@redhat.com> 0.4.9-73
changelog:
  - Add 0110-RHBZ-blacklist-vd-devs.patch
    * blacklist vd[a-z] devices, since they don't have a WWID for
      multipath to use.


author: Benjamin Marzinski <bmarzins@redhat.com> 0.4.9-75
changelog:
  - Add 0111-RH-dont-show-pg-timeout.patch
    * The kernel doesn't support pg_timeout, so multipath shouldn't
      bother to display it
  - Add 0112-RHBZ-1194917-add-config_dir-option.patch
    * multipath will now also read its configuration from files with
      the .conf suffix in the directory specified by config_dir
      which defaults to /etc/multipath/conf.d
  - Add 0113-RHBZ-1194917-cleanup.patch
    * cleanup some unnecessary code
  - Add 0114-RHBZ-1196394-delayed-reintegration.patch
    * Add "delay_watch_checks" and "delay_wait_checks" options to delay
      reintegration of flakey paths.
  - Add 0115-RHBZ-1198418-fix-double-free.patch
    * multipath was freeing the multipath alias twice if it failed to create the
      multipath device.
  - Add 0116-UPBZ-1188179-dell-36xxi.patch
    * new builtin configurations.
  - Add 0117-RHBZ-1198424-autodetect-clariion-alua.patch
    * configure multipath to automatically detect alua settings on clariion
      devices.


author: Benjamin Marzinski <bmarzins@redhat.com> 0.4.9-77
changelog:
  - Modify 0104-RHBZ-631009-deferred-remove.patch
    * add man page info
  - Refresh 0112-RHBZ-1194917-add-config_dir-option.patch
  - Refresh 0114-RHBZ-1196394-delayed-reintegration.patch
  - Add 0118-UPBZ-1200738-update-eternus-config.patch
    * update default config
  - Add 0119-RHBZ-1081397-save-alua-info.patch
    * make prioritizers save information between calls to speed them up.
  - Add 0120-RHBZ-1043093-realloc-fix.patch
    * free old memory if realloc fails.
  - Add 0121-RHBZ-1197234-rules-fix.patch
    * make sure kpartx runs after an DM_ACTIVATION event occurs.
  - Add 0122-RHBZ-1212590-dont-use-var.patch
    * use /run instead of /var/run
  - Add 0123-UPBZ-1166072-fix-path-offline.patch
    * Don't mark quiesce and transport-offline paths as offline
  - Add 0124-RHBZ-1209275-retrigger-uevents.patch
    * Make multipathd retrigger uevents when paths haven't successfully had
      their udev_attribute environment variable set by udev and add
      "retrigger_ties" and "retrigger_delay" to control this
  - Add 0125-RHBZ-1153832-kpartx-delete.patch
    * Delete all partition devices with -d (not just the ones in the partition
      table)
  - Add 0126-RHBZ-1211383-alias-collision.patch
    * make multipathd use the old alias, if rename failed and add
      "new_bindings_in_boot" to determine if new bindings can be added to
      the bindings file in the initramfs
  - Add 0127-RHBZ-1201030-use-blk-availability.patch
    * Make multipath use blk-availability.service
  - Add 0128-RHBZ-1222123-mpathconf-allow.patch
    * Add mpathconf --allow for creating specialized config files.
  - Add 0129-RHBZ-1241774-sun-partition-numbering.patch
    * Make kpartx correctly number sun partitions.


author: Benjamin Marzinski <bmarzins@redhat.com> 0.4.9-80
changelog:
  - Add 0131-RHBZ-1259523-host_name_len.patch
    * increase size of host string
  - Add 0132-UPBZ-1259831-lock-retry.patch
    * retry locking when creating multipath devices


author: Benjamin Marzinski <bmarzins@redhat.com> 0.4.9-82
changelog:
  - Modify 0005-RH-add-mpathconf.patch
    * changed warning message
  - Modify 0102-RHBZ-1160478-mpathconf-template.patch
    * updated man page
  - Modify 0104-RHBZ-631009-deferred-remove.patch
    * refactor code and minor fix
  - Refresh 0107-RHBZ-1169935-no-new-devs.patch
  - Refresh 0112-RHBZ-1194917-add-config_dir-option.patch
  - Refresh 0126-RHBZ-1211383-alias-collision.patch
  - Add 0133-RHBZ-1296979-fix-define.patch
    * look for the correct libudev function to set define
  - Add 0134-RHBZ-1241528-check-mpath-prefix.patch
    * only touch devices with a "mpath-" dm uuid prefix
  - Add 0135-RHBZ-1299600-path-dev-uevents.patch
    * trigger path uevent the first time a path is claimed by multipath
  - Add 0136-RHBZ-1304687-wait-for-map-add.patch
    * wait for the device to finish being added before reloading it.
  - Add 0137-RHBZ-1280524-clear-chkr-msg.patch
  - Add 0138-RHBZ-1288660-fix-mpathconf-allow.patch
    * don't remove existing lines from blacklist_exceptions section
  - Add 0139-RHBZ-1273173-queue-no-daemon-doc.patch
  - Add 0140-RHBZ-1299647-fix-help.patch
  - Add 0141-RHBZ-1303953-mpathpersist-typo.patch
  - Add 0142-RHBZ-1283750-kpartx-fix.patch
    * only remove devices if their uuid says that they are the correct
      partition device
  - Add 0143-RHBZ-1299648-kpartx-sync.patch
    * default to using udev sync mode
  - Add 0144-RHBZ-1299652-alua-pref-arg.patch
    * allow "exclusive_pref_bit" argument to alua prioritizer
  - Add 0145-UP-resize-help-msg.patch
  - Add 0146-UPBZ-1299651-raw-output.patch
    * allow raw format mutipathd show commands, that remove headers and padding
  - Add 0147-RHBZ-1272620-fail-rm-msg.patch
  - Add 0148-RHBZ-1292599-verify-before-remove.patch
    * verify that all partitions are unused before attempting to remove a device
  - Add 0149-RHBZ-1292599-restore-removed-parts.patch
    * don't disable kpartx when restoring the first path of a device.
  - Add 0150-RHBZ-1253913-fix-startup-msg.patch
    * wait for multipathd daemon to write pidfile before returning
  - Add 0151-RHBZ-1297456-weighted-fix.patch
    * add wwn keyword to weighted prioritizer for persistent naming
  - Add 0152-RHBZ-1269293-fix-blk-unit-file.patch
    * use "Wants" instead of "Requires"
  - Add 0153-RH-fix-i686-size-bug.patch
    * use 64-bit keycodes for multipathd client commands
  - Add 0154-UPBZ-1291406-disable-reinstate.patch
    * don't automatically reinstate ghost paths for implicit alua devices
  - Add 0155-UPBZ-1300415-PURE-config.patch
    * Add default config for PURE FlashArray
  - Add 0156-UPBZ-1313324-dont-fail-discovery.patch
    * don't fail discovery because individual paths failed.
  - Add 0157-RHBZ-1319853-multipath-c-error-msg.patch
    * better error reporting for multipath -c
  - Add 0158-RHBZ-1318581-timestamp-doc-fix.patch
    * add documentation for -T
  - Add 0159-UPBZ-1255885-udev-waits.patch
    * make multipath and kpartx wait after for udev after each command


author: Benjamin Marzinski <bmarzins@redhat.com> 0.4.9-83
changelog:
  - Modify 0135-RHBZ-1299600-path-dev-uevents.patch
    * trigger uevents when adding wwids for existing devices during startup
  - Refresh 0136-RHBZ-1304687-wait-for-map-add.patch
  - Refresh 0150-RHBZ-1253913-fix-startup-msg.patch
  - Modify 0159-UPBZ-1255885-udev-waits.patch
    * fix bug in failure path
  - Add 0160-RH-udev-flags.patch
  - Add 0161-RHBZ-1311659-no-kpartx.patch
    * skip_kpartx option disables kpartx running on multipath devices
  - Add 0162-RHBZ-1333331-huawei-config.patch
    * Add default config for Huawei XSG1 array
  - Add 0163-UPBZ-1333492-resize-map.patch
    * restore old size if resize fails
  - Add 0164-RHBZ-1311463-dos-part-rollover.patch
    * fix incorrect partition size due to 4k device size rollover
  - Add 0165-UPBZ-1341748-MSA-2040-conf.patch
    * Add default config for MSA 2040 array
  - Add 0166-RHBZ-1323429-dont-allow-new-wwid.patch
    * don't allow path wwid to change while it is in use
  - Add 0167-RHBZ-1335176-fix-show-cmds.patch
    * and new show multipath format wildcard, 'f' to sho number of failures.
      This will hopefully be useful for tracking what happens to multipath
      devices for bz #1335176
  - Add 0168-RHBZ-1347769-shared-lock.patch
    * make multipath lock the path devices with a shared lock
  - Add 0169-UPBZ-1353357-json-output.patch
    * add mulitpathd json output command
  - Add 0170-UPBZ-1352925-fix-typo.patch
  - Add 0171-UPBZ-1356651-allow-zero-size.patch
    * Allow zero-sized paths to be added to a multipath device
  - Add 0172-RHBZ-1350931-no-active-add.patch
    * Allow paths to be added to a new map if no active paths exist. Also
      fixes 1351430


author: Benjamin Marzinski <bmarzins@redhat.com> 0.4.9-86
changelog:
  - Modify 0136-RHBZ-1304687-wait-for-map-add.patch
    * switch to missing_uev_wait_timeout to stop waiting for uev
  - Refresh 0137-RHBZ-1280524-clear-chkr-msg.patch
  - Refresh 0150-RHBZ-1253913-fix-startup-msg.patch
  - Refresh 0154-UPBZ-1291406-disable-reinstate.patch
  - Refresh 0156-UPBZ-1313324-dont-fail-discovery.patch
  - Refresh 0161-RHBZ-1311659-no-kpartx.patch
  - Refresh 0167-RHBZ-1335176-fix-show-cmds.patch
  - Add 0173-RH-update-man-page.patch
  - Add 0174-RHBZ-1362396-modprobe.patch
    * make starting the multipathd service modprobe dm-multipath in the
      sysvinit scripts
  - Add 0175-RHBZ-1357382-ordering.patch
    * force multipathd.service to start after systemd-udev-trigger.service
  - Add 0176-RHBZ-1363830-fix-rename.patch
    * initialized a variable to make dm_rename not fail randomly
  - Add 0177-libmultipath-correctly-initialize-pp-sg_id.patch
    * This and all the following patches add the rbd patch checker
  - Add 0178-libmultipath-add-rbd-discovery.patch
  - Add 0179-multipath-tools-add-checker-callout-to-repair-path.patch
  - Add 0180-multipath-tools-Add-rbd-checker.patch
  - Add 0181-multipath-tools-Add-rbd-to-the-hwtable.patch
  - Add 0182-multipath-tools-check-for-initialized-checker-before.patch
  - Add 0183-multipathd-Don-t-call-repair-on-blacklisted-path.patch
  - Add 0184-rbd-fix-sync-repair-support.patch
  - Add 0185-rbd-check-for-nonshared-clients.patch
  - Add 0186-rbd-check-for-exclusive-lock-enabled.patch
  - Add 0187-rbd-fixup-log-messages.patch
  - Add 0188-RHBZ-1368501-dont-exit.patch
    * make multipathd not exit if it encounters recoverable errors on startup
  - Add 0189-RHBZ-1368211-remove-retries.patch
    * add "remove_retries" multipath.conf parameter to make multiple attempts
      to remove a multipath device if it is busy.
  - Add 0190-RHBZ-1380602-rbd-lock-on-read.patch
    * pass lock_on_read when remapping image
  - Add 0191-RHBZ-1169168-disable-changed-paths.patch
    * add "disabled_changed_wwids" multipath.conf parameter to disable
      paths whose wwid changes
  - Add 0192-RHBZ-1362409-infinibox-config.patch
  - Add 0194-RHBZ-1351964-kpartx-recurse.patch
    * fix recursion on corrupt dos partitions
  - Add 0195-RHBZ-1359510-no-daemon-msg.patch
    * print a messages when multipathd isn't running
  - Add 0196-RHBZ-1239173-dont-set-flag.patch
    * don't set reload flag on reloads when you gain your first
      valid path
  - Add 0197-RHBZ-1394059-max-sectors-kb.patch
    * add "max_sectors_kb" multipath.conf parameter to set max_sectors_kb
      on a multipath device and all its path devices
  - Add 0198-RHBZ-1372032-detect-path-checker.patch
    * add "detect_checker" multipath.conf parameter to detect ALUA arrays
      and set the path checker to TUR
  - Add 0199-RHBZ-1279355-3pardata-config.patch
  - Add 0200-RHBZ-1402092-orphan-status.patch
    * clear status on orphan paths
  - Add 0201-RHBZ-1403552-silence-warning.patch
  - Add 0202-RHBZ-1362120-skip-prio.patch
    * don't run prio on failed paths
  - Add 0203-RHBZ-1363718-add-msgs.patch
  - Add 0204-RHBZ-1406226-nimble-config.patch
  - Add 0205-RHBZ-1416569-reset-stats.patch
    * add "reset maps stats" and "reset map <map> stats" multipathd
      interactive commands to reset the stats tracked by multipathd
  - Add 0206-RHBZ-1239173-pt2-no-paths.patch
    * make multipath correctly disable scanning and rules running when
      it gets a uevent and there are not valid paths.
  - Add 0207-UP-add-libmpathcmd.patch
    * New shared library, libmpathcmd, that sends and receives messages from
      multipathd. device-mapper-multipath now uses this library internally.
  - Add 0208-UPBZ-1430097-multipathd-IPC-changes.patch
    * validation that modifying commands are coming from root.
  - Add 0209-UPBZ-1430097-multipath-C-API.patch
    * New shared library. libdmmp, that presents the information from multipathd
      in a structured manner to make it easier for callers to use
  - Add 0210-RH-fix-uninstall.patch
    * Minor compilation fixes
  - Add 0211-RH-strlen-fix.patch
    * checks that variables are not NULL before passing them to strlen
  - Add 0212-RHBZ-1431562-for-read-only.patch
  - Make 3 new subpackages
    * device-mapper-multipath-devel, libdmmp, and libdmmp-devel. libmpathcmd
      and libmpathprio are in device-mapper-multipath-libs and
      device-mapper-multipath-devel. libdmmp is in its own subpackages
  - Move libmpathprio devel files to device-mapper-multipath-devel
  - Added BuildRequires on librados2-devel


author: Benjamin Marzinski <bmarzins@redhat.com> 0.4.9-87
changelog:
  - Remove Epoch from device-mapper requires
    * The RHEL releases of device-mapper set the Epoch, and this was
      accidentally retained in the fedora spec file.


author: Benjamin Marzinski <bmarzins@redhat.com> 0.7.1-1.gitf21166a
changelog:
  - Update Source to the latest upstream commit
  - Add 0001-libmultipath-add-comment-about-resuming.patch
    * posted upstream
  - Add 0002-multipath-attempt-at-common-multipath.rules.patch
    * under discussion upstream
  - Add 0003-RH-fixup-udev-rules-for-redhat.patch
    * Redhat uses different udev rules that some other distros, so multipath
      has run at a different time. Not all upstream distros link /sbin and
      /usr/sbin either.
  - Add 0004-RH-Remove-the-property-blacklist-exception-builtin.patch
    * Allow multipath to be used on devices without multiple paths. NAK'ed
      upstream, but requested by Red Hat
  - Add 0005-RH-don-t-start-without-a-config-file.patch
    * Don't start multipath unless a config file exists. NAK'ed upstream,
      but requested by Red Hat
  - Add 0006-RH-use-rpm-optflags-if-present.patch
    * Make the build system fedora friendly
  - Add 0007-RH-add-mpathconf.patch
    * Add tool to help configure multipath with Red Hat defaults.
  - Add 0008-RH-add-wwids-from-kernel-cmdline-mpath.wwids-with-A.patch
    * Make multipath able to claim devices based on the kernel command line
      NAK'ed upstream but requested by Red Hat
  - Add 0009-RH-trigger-change-uevent-on-new-device-creation.patch
    * under discussion upstream


author: Benjamin Marzinski <bmarzins@redhat.com> 0.7.1-2.gitf21166a
changelog:
  - Modify 0004-RH-Remove-the-property-blacklist-exception-builtin.patch
    * update multipath.conf.5 man page to remove builtin listing
  - Modify 0005-RH-don-t-start-without-a-config-file.patch
    * update multipathd.8 man page to note that a config file is necessary
  - Modify 0007-RH-add-mpathconf.patch
    * add property blacklist-exception to default config file
  - Add 0010-libmultipath-change-how-RADOS-checker-is-enabled.patch
    * Makefile now autodetects librados. Posted upstream
  - Remove related RADOS option from spec file
  - Add 0011-multipath-set-verbosity-to-default-during-config.patch
    * Allow multipath to print warning messages during configuration.
      Posted upstream
  - Add 0012-mpath-skip-device-configs-without-vendor-product.patch
    * device entries without vendor/product were breaking configurations.
      Posted upsteam
  - Add 0013-multipathd-fix-show-maps-json-crash.patch
    * multipathd crashed showing json output with no devices. Posted
      upstream


author: Benjamin Marzinski <bmarzins@redhat.com> 0.7.1-4.git847cc43
changelog:
  - Update Source to the latest upstream commit
    * Previous patches 0001 and 0010-0013 are included in this commit.
  - Add 0001-libmultipath-update-3PARdata-builtin-config.patch
    * Change for building configuration. Posted upstream
  - Modify 0006-RH-use-rpm-optflags-if-present.patch
    * Add missing lines to actually use RPM_OPT_FLAGS.


author: Benjamin Marzinski <bmarzins@redhat.com> 0.7.1-8.git847cc43
changelog:
  - Refresh 0001-libmultipath-update-3PARdata-builtin-config.patch
  - Add 0010-RH-warn-on-invalid-regex-instead-of-failing.patch
    * Change old-style multipath.conf regex "*" to a proper ".*" instead of
      failing


author: Benjamin Marzinski <bmarzins@redhat.com> 0.7.3-1
changelog:
  - Update Source to upstream 0.7.3 release
    * Previous patch 0001 is included in this commit, and 0002 was solved in a
      different manner causing some change to previous patch 0003
    * Previous patches 0003-0010 are now patches 0007-0014
  - Add 0001-mpathpersist-Fix-invalid-condition-check.patch
    * Fix incorrect check. posted upstream
  - Add 0002-multipath-add-man-page-info-for-my-prkey-changes.patch
    * Add missing man page info. posted upstream
  - Add 0003-multipath-there-is-no-none-path-state.patch
    * remove incorrect path state. posted upstream
  - Add 0004-mutipath-updated-Huawei-storage-config.patch
    * update builtin device configuration. posted upstream
  - Add 0005-multipath-fix-doc-typo.patch
    * fix man page typo. posted upstream
  - Add 0006-multipath-add-ghost_delay-parameter.patch
    * add new multipath.conf parameter "ghost_delay". posted upstream


author: Benjamin Marzinski <bmarzins@redhat.com> 0.7.4-1.git07e7bd5
changelog:
  - Update Source to the latest upstream commit
    * Previous patches 0001-0006 are included in this commit
    * Previous patches 0007-0014 are now patches 0015-0022
  - Add 0001-libmultipath-fix-tur-checker-locking.patch
    * Fixed spinlock bug. posted upstream
  - Add 0002-multipath-fix-DEF_TIMEOUT-use.patch
    * Add missing sec to ms conversion. posted upstream
  - Add 0003-multipathd-remove-coalesce_paths-from-ev_add_map.patch
    * Remove unused code. posted upstream
  - Add 0004-multipathd-remove-unused-configure-parameter.patch
    * Remove unused code. posted upstream
  - Add 0005-Fix-set_no_path_retry-regression.patch
    * Fix issue with queueing and path addition. posted upstream
  - Add 0006-multipathd-change-spurious-uevent-msg-priority.patch
    * Change message priority to Notice. posted upstream
  - Add 0007-multipath-print-sysfs-state-in-fast-list-mode.patch
    * Show sysfs state correctly in fast list mode (-l). posted upstream
  - Add 0008-libmultipath-move-remove_map-waiter-code-to-multipat.patch
    * Move code around. posted upstream
  - Add 0009-move-waiter-code-from-libmultipath-to-multipathd.patch
    * Move code around. posted upstream
  - Add 0010-call-start_waiter_thread-before-setup_multipath.patch
    * Fix race on multipath device creations. posted upstream
  - Add 0011-libmultipath-add-helper-functions.patch
    * posted upstream
  - Add 0012-multipathd-RFC-add-new-polling-dmevents-waiter-threa.patch
    * Add alternate method of getting dmevents, that doesn't
      require a thread per device. posted upstream
  - Add 0013-libmultipath-condlog-log-to-stderr.patch
    * change condlog to log to stderr instead of stdout. posted upstream
  - Add 0014-multipathd-fix-compiler-warning-for-uev_pathfail_che.patch
    * fix indentation issue. posted upstream


author: Benjamin Marzinski <bmarzins@redhat.com> - 0.7.6-1.git1cb704b
changelog:
  - Update Source to the latest upstream commit
    * Previous patches 0001-0014 are included in this commit
    * Previous patches 0015-0022 are now patches 0007-0014
  - 0001-multipathd-remove-incorrect-pthread_testcancel.patch
    * Fixed pthread cancellation issue. posted upstream
  - 0002-multipath-add-comments.patch
    * Posted upstream
  - 0003-multipathd-minor-dmevents-polling-code-cleanups.patch
    * Fixed minor polling issues. posted upstream
  - 0004-multipathd-remove-unneeded-function-parameter.patch
    * Posted upstream
  - 0005-mpathcmd-fix-libmpathcmd-license.patch
    * License clarification. posted upstream
  - 0006-libmultipath-don-t-print-undefined-values.patch
    * Fixed bug in 'multipath show config'. posted upstream


author: Benjamin Marzinski <bmarzins@redhat.com> 0.7.6-2.git1cb704b
changelog:
  - Add 0007-libmultipath-Fix-logic-in-should_multipath.patch
    * fix bug in identifying multipathable devices. posted upstream
  - Rename files
    * Previous patches 0007-0014 are now patches 0008-0015


author: Benjamin Marzinski <bmarzins@redhat.com> 0.7.6-3.git1cb704b
changelog:
  - Add 0008-multipathd-add-failures-path-format-wildcard.patch
  - Add 0009-multipathd-fix-reservation_key-check.patch
  - Rename files
    * Previous patches 0008-0015 are now patches 0010-0017


author: Benjamin Marzinski <bmarzins@redhat.com> 0.7.7-1
changelog:
  - Update Source to 0.7.7
    * Previous patches 0001-0009 & 0016 are included in this commit
  - Add upstream patches since 0.7.7
    * patches 0001-0012 are from upstream commits since 0.7.7
  - Add 0013-libmultipath-print-correct-default-for-delay_-_check.patch
    * fix minor configuration printing issue. posted upstream
  - Add 0014-multipath.conf.5-clarify-property-whitelist-handling.patch
    * clarify property blacklist_excecptions handling in man page
      posted upstream
  - Add 0015-mpathpersist-add-all_tg_pt-option.patch
    * add new all_tg_pt multpiath.conf option. posted upstream
  - Add 0016-libmultipath-remove-rbd-code.patch
    * remove unused rbd code. posted upstream
  - Add 0017-mpathpersist-fix-aptpl-support.patch
    * add ":aptpl" suffix for reservation_key to fix aptpl support.
      posted upstream
  - Add 0018-multipath-don-t-check-timestamps-without-a-path.patch
    * fix multipath null dereference crash. posted upstream
  - Add 0019-libmultipath-fix-detect-alua-corner-case.patch
    * fix alua detection with retain_hardware_handler set to off. posted
      upstream
  - Add 0020-multipath-fix-setting-conf-version.patch
    * multipath wasn't setting the kernel version correctly. posted
      upstream
  - Add 0028-RH-reset-default-find_mutipaths-value-to-off.patch
    * default to RHEL7 and older device detection style. Redhat specific,
      to keep customer experience the same.
  - Rename files
    * Previous patches 0010-0015 & 0017 are now patches 0021-0027
  - Modify 0021-RH-fixup-udev-rules-for-redhat.patch
    * Fix spurious compile warning with redhat compile options
  - Modify 0022-RH-Remove-the-property-blacklist-exception-builtin.patch
    * clarify changes in man page


author: Benjamin Marzinski <bmarzins@redhat.com> 0.7.7-2.gitef6d98b
changelog:
  - Update Source to latest upstream commit
    * Previous patches 0001-0018 are included in this commit
  - Rename files
    * Previous patches 0019-0028 are now patches 0002-0003 & 0012-0019
  - Add 0001-libmultipath-remove-last-of-rbd-code.patch
  - Add 0004-mpathpersist-add-param-alltgpt-option.patch
    * mpathpersist now accepts --param-alltgpt
  - Add 0005-libmutipath-remove-unused-IDE-bus-type.patch
  - Add 0006-multipathd-add-new-protocol-path-wildcard.patch
    * multipathd show paths format now accepts %P for the path protocol/transport
  - Add 0007-libmultipath-add-protocol-blacklist-option.patch
    * You can now use the "protocol" blacklist section parameter to blacklist
      by protocol/transport
  - Add 0008-libmultipath-remove-_filter_-blacklist-functions.patch
  - Add 0009-multipath-tests-change-to-work-with-old-make-version.patch
  - Add 0010-multipath-tests-add-blacklist-tests.patch
  - Add 0011-mpathpersist-add-missing-param-rk-usage-info.patch
  - Refresh 0013-RH-Remove-the-property-blacklist-exception-builtin.patch
  - Modify 0016-RH-add-mpathconf.patch
    * improve usage message and man page
  - Modify device-mapper-multipath.spec
    * updated dependencies


author: Benjamin Marzinski <bmarzins@redhat.com> 0.7.8-1
changelog:
  - Update Source to upstream version 0.7.8
    * Previous patches 0001-0011 are included in this version
  - Rename files
    * Previous patches 0012-0019 are now patches 0007-0014
  - Add 0001-multipath-tweak-logging-style.patch
  - Add 0002-multipathd-check-for-NULL-udevice-in-cli_add_path.patch
  - Add 0003-libmultipath-remove-max_fds-code-duplication.patch
  - Add 0004-multipathd-set-return-code-for-multipathd-commands.patch
  - Add 0005-mpathpersist-fix-registration-rollback-issue.patch
  - Add 0006-libmultipath-timeout-on-unresponsive-tur-thread.patch
    * The above 6 patches have been submitted upstream
  - Resolves: bz #1606947, #1631883


author: Benjamin Marzinski <bmarzins@redhat.com> 0.7.8-2
changelog:
  - Add 0015-libmultipath-free-allocated-value-in-set_int.patch
  - Add 0016-kpartx-fix-new-memory-leak-in-dm_find_part.patch
  - change hardcoded /usr/lib/udev/rules.d to _udevrulesdir
  - Resolves: bz #1606947


author: Benjamin Marzinski <bmarzins@redhat.com> 0.7.8-3
changelog:
  - Add 0017-BZ-1648397-fix-mpp-hwe-handling-when-paths-are-freed.patch
    * Fix crash by deleting in use hardware entry list pointer
  - Add 0018-libmultipath-cleanup-pthread_cleanup_pop-call.patch
    * Fix compiler warning
  - Add 0019-libmultipath-fix-false-removes-in-dmevents-polling-c.patch
    * The above 3 patches have been accepted upstream
  - Resolves: bz #1648397


author: Benjamin Marzinski <bmarzins@redhat.com> 0.7.8-5
changelog:
  - Add 0021-BZ-1673167-Fix-miscounting-active-paths.patch
  - Add 0022-BZ-1673167-ignore-failed-wwid-recheck.patch
  - Resolves: bz #1673167


author: Benjamin Marzinski <bmarzins@redhat.com> 0.7.8-6
changelog:
  - Fix multipath_conf_syntax CI test
    * need to wait for udev to settle before removing multipath device
  - Resolves: bz #1673167


author: Benjamin Marzinski <bmarzins@redhat.com> 0.8.0-1
changelog:
  - Update Source to upstream version 0.8.0
    * Previous patches 0001-0006 & 0015-0019 are included in this commit
  - Rename files
    * Previous patches 0007-0014 are now 0018-0025
    * Previous patches 0020-0023 are now 0001, 0006 & 0007
  - Add 0002-libmultipath-handle-existing-paths-in-marginal_path-.patch
  - Add 0003-multipathd-cleanup-marginal-paths-checking-timers.patch
  - Add 0004-libmultipath-fix-marginal-paths-queueing-errors.patch
  - Add 0005-libmultipath-fix-marginal_paths-nr_active-check.patch
  - Add 0008-libmutipath-continue-to-use-old-state-on-PATH_PENDIN.patch
  - Add 0009-multipathd-use-update_path_groups-instead-of-reload_.patch
  - Add 0010-multipath.conf-add-missing-options-to-man-page.patch
  - Add 0011-libmultipath-add-get_uid-fallback-code-for-NVMe-devi.patch
  - Add 0012-libmulitpath-cleanup-uid_fallback-code.patch
  - Add 0013-multipathd-handle-changed-wwids-by-removal-and-addit.patch
    * Multipath will now automatically remove and re-add paths if
      their wwid changes
  - Add 0014-multipathd-remove-wwid_changed-path-attribute.patch
  - Add 0015-multipathd-ignore-disable_changed_wwids.patch
    * Since paths are now getting removed and re-added there is
      no need to disable them.
  - Add 0016-multipathd-Don-t-use-fallback-code-after-getting-wwi.patch
  - Add 0017-libmultipath-silence-dm_is_mpath-error-messages.patch
  - Add 0026-RH-Fix-nvme-compilation-warning.patch
  - Add 0027-Fix-systemd-version-detection.patch
    * The above 16 patches have been submitted upstream
  - Add 0028-RH-attempt-to-get-ANA-info-via-sysfs-first.patch
    * Red Hat has a sysfs method to access the ANA state, which isn't
      upstream, and will not be. This will probably go away in the
      future.
  - Resolves: bz #1498546


author: Benjamin Marzinski <bmarzins@redhat.com> 0.8.0-2
changelog:
  - Add 0029-BZ-1700451-check-on-multipathd-without-starting-it.patch
  - Add 0030-BZ-1700451-test-socket-connection-in-non-blocking-mo.patch
    * the "multipath -u" call in 62-multipath.rules should no longer hang
      on multipathd startup.
  - Resolves: bz #1700451


author: Benjamin Marzinski <bmarzins@redhat.com> 0.8.0-3
changelog:
  - Add 0031-libmultipath-handle-clock_gettime-failures-in-tur-ch.patch
  - Add 0032-kpartx-fail-if-dup-of-dasd-file-descriptor-fails.patch
  - Add 0033-multipathd-fix-REALLOC_REPLY-with-max-length-reply.patch
  - Add 0034-multipathd-handle-NULL-return-from-genhelp_handler.patch
    * The above 4 patches have been submitted upstream
  - Related: bz #1498546


author: Benjamin Marzinski <bmarzins@redhat.com> 0.8.0-4
changelog:
  - Add 0035-BZ-1700911-hwtable-add-Lenovo-DE-series.patch
  - Add 0036-libmultipath-make-vector_foreach_slot_backwards-work.patch
    * Fix for bz #1713459
  - Fixes for bz #1666322 and #1669097 were included in 0.8.0 upstream
    code
  - Resolves: bz #1666322, #1669097, #1700911, #1713459


author: Benjamin Marzinski <bmarzins@redhat.com> 0.8.3-1
changelog:
  - Update Source to upstream version 0.8.3
    * This version includes the fixes for bz #1690515, #1703439,
        * Previous patches 0001-0017 & 0031-0036 are included in this version
  - Rename files
    * Previous patches 0018-0026 & 0028 are now 0004-0013
    * 0008-RH-add-mpathconf.patch has been modified to add a
      --property_blacklist option to fix bz #1753729
  - Add 0001-multipathd-warn-when-configuration-has-been-changed.patch
    * Multipath now logs a warning message when the configuration file
      has been changed to fix bz #1750594
  - Add 0002-libmultipath-fix-leak-in-foreign-code.patch
  - Add 0003-Fix-leak-in-mpathpersist.patch
    * The above 3 patches have been submitted upstream
  - Resolves: bz #1690515, #1703439, #1719562, #1747534, #1750594, #1753729


author: Benjamin Marzinski <bmarzins@redhat.com> 0.8.3-3
changelog:
  - Rename files
    * Previous patches 0004-0013 are now 0010-0019
    * 0014-RH-add-mpathconf.patch now makes mpathconf default to not
      printing foreign devices (bz #1760709)
  - Add 0004-libmultipath-remove-unused-path-prio_args.patch
  - Add 0005-libmultipath-constify-get_unaligned_be.patch
  - Add 0006-libmultipath-add-missing-hwe-mpe-variable-merges.patch
  - Add 0007-libmultipath-fix-sgio_get_vpd-looping.patch
  - Add 0008-libmultipath-add-vend_id-to-get_vpd_sgio.patch
  - Add 0009-libmultipath-add-code-to-get-vendor-specific-vpd-dat.patch
    * Add the '%g' maps and paths format wildcard, and the vpd_vendor
      multipath.conf devices section parameter. (bz #1527212)
  - Resolves: bz #1527212, #1760709


author: Benjamin Marzinski <bmarzins@redhat.com> 0.8.4-1
changelog:
  - Update Source to upstream version 0.8.4
    * This version includes the fixes for bz #1768894 & #1821214
    * Previous patches 0001-0009 are included in this version
  - Rename files
    * Previous patches 0010-0019 are now 0011-0020
  - Add 0001-libmultipath-assign-variable-to-make-gcc-happy.patch
  - Add 0002-libmutipath-don-t-close-fd-on-dm_lib_release.patch
  - Add 0003-libmultipath-allow-force-reload-with-no-active-paths.patch
    * make multipath and multipathd reload maps with no active paths
      (bz #1814858)
  - Add 0004-libmpathpersist-depend-on-libmultipath.patch
  - Add 0005-multipath-tools-Makefile-more-dependency-fixes-for-p.patch
  - Add 0006-multipath-tools-Makefile.inc-set-Wno-error-clobbered.patch
  - Add 0007-libmultipath-discovery.c-use-z-qualifier-for-size_t.patch
  - Add 0008-libmultipath-eliminate-more-signed-unsigned-comparis.patch
  - Add 0009-libmultipath-set_uint-fix-parsing-for-32bit.patch
  - Add 0010-multipath-tools-Makefile-add-install-dependency.patch
    * The above 10 patches have been submitted upstream
  - Resolves: bz #1768894, #1814858, #1821214


author: Benjamin Marzinski <bmarzins@redhat.com> 0.8.4-2
changelog:
  - Add 0021-libmultipath-remove-_blacklist_exceptions-functions.patch
  - Add 0022-libmultipath-fix-parser-issue-with-comments-in-strin.patch
  - Add 0023-libmultipath-invert-regexes-that-start-with-exclamat.patch
    * This commit also changes the default devnode blacklist to
      blacklist all devices except scsi, dasd, and nvme.
  - Resolves: bz #1828180


author: Benjamin Marzinski <bmarzins@redhat.com> 0.8.4-3
changelog:
  - Add 0024-libmultipath-make-dm_get_map-status-return-codes-sym.patch
  - Add 0025-multipathd-fix-check_path-errors-with-removed-map.patch
  - Add 0026-libmultipath-make-dm_flush_maps-only-return-0-on-suc.patch
  - Add 0027-multipathd-add-del-maps-multipathd-command.patch
  - Add 0028-multipath-make-flushing-maps-work-like-other-command.patch
  - Add 0029-multipath-delegate-flushing-maps-to-multipathd.patch
  - Add 0030-multipath-add-option-to-skip-multipathd-delegation.patch
    * The above 7 patches fix bz #1845875. Multipath now attempts to
      delegate device removal to multipathd, and multipathd handles
      external device removal better.
  - Add 0031-libmultipath-fix-sysfs-dev_loss_tmo-parsing.patch
    * Fixes bz #1852843
  - Add 0032-kpartx-read-devices-with-direct-IO.patch
    * Fixes bz #1814858
  - Add 0033-kpartx-handle-alternate-bsd-disklabel-location.patch
  - Add 0034-libmultipath-fix-checker-detection-for-nvme-devices.patch
    * fixes bz #1845915
  - Add 0035-Makefile.inc-trim-extra-information-from-systemd-ver.patch
  - Add 0036-kpartx-fix-Wsign-compare-error.patch
  - Resolves: bz #1814858, #1845875, #1845915, #1852843


author: Benjamin Marzinski <bmarzins@redhat.com> 0.8.4-4
changelog:
  - Add 0037-libmultipath-count-pending-paths-as-active-on-loads.patch
    * make udev treat the device as having paths, so it will run kpartx
    * Fixes bz #1846866
  - Resolves: bz #1846866


author: Benjamin Marzinski <bmarzins@redhat.com> 0.8.4-5
changelog:
  - Add 0038-multipath-deal-with-failures-flushing-maps.patch
    * Don't print "fail" if multipath needs to failback to removing
      a device itself.
    * Fixes bz #1845875
  - Modify multipath_conf_syntax CI test
    * It started failing because "multpath -F" can now start multipathd
      via the socket, and the test expected multipathd to not be running
  - Resolves: bz #1845875


author: Benjamin Marzinski <bmarzins@redhat.com> 0.8.4-6
changelog:
  - Add 0039-libmultipath-factor-out-code-to-get-vpd-page-data.patch
  - Add 0040-libmultipath-limit-reading-0xc9-vpd-page.patch
    * Only check for rdac support on configured devices, or devices where
      vpd page 0x00 indicates support for vpd page 0xc9
    * Fixes bz #1877415
  - Add 0041-libmultipath-add-device-to-hwtable.c.patch
    * Add support for Fujitsu Eternus AB/HB
    * Fixes bz #1857429
  - Add 0042-libmultipath-move-fast_io_fail-defines-to-structs.h.patch
  - Add 0043-libmultipath-add-eh_deadline-multipath.conf-paramete.patch
    * Fixes bz #1819897
  - Add 0044-libmultipath-don-t-dlclose-tur-checker-DSO.patch
    * Fixes bz #1875384
  - Add 0045-libmultipath-warn-about-missing-braces-at-end-of-mul.patch
    * Fixes bz #1897530
  - Add 0046-libmultipath-ignore-multipaths-sections-without-wwid.patch
    * Fixes bz #1897815
  - Add 0047-tests-fix-missing-priority-blacklist-test.patch
  - Add 0048-mpathpersist-Fix-Register-and-Ignore-with-0x00-SARK.patch
    * Make mpathpersist Register and Ignore command clear the registration
      with a 0x0 SARK, like sg_persist does.
    * Fixes bz #1894103
  - Add 0049-mpathpersist-update-prkeys-file-on-changing-registra.patch
    * Fixes bz #1900522
    * The above 11 patches have all been submitted upstream
  - Resolves: bz #1819897, #1857429, #1875384, #1877415, #1894103, #1897530
  - Resolves: bz #1897815, #1900522


author: Benjamin Marzinski <bmarzins@redhat.com> 0.8.4-6
changelog:
  - Add 0050-multipathd-Fix-multipathd-stopping-on-shutdown.patch
    * Fixes bz #1892496
  - Add 0051-multipath.conf.5-Improve-checker_timeout-description.patch
    * Fixes bz #1906073
  - Resolves: bz #1892496, #1906073


author: Benjamin Marzinski <bmarzins@redhat.com> 0.8.4-7
changelog:
  - Add 0052-libmultipath-check-for-null-wwid-before-strcmp.patch
    * Missing part of fix for bz #1897815
  - Add 0053-libmultipath-make-find_err_path_by_dev-static.patch
  - Add 0054-multipathd-avoid-io_err_stat-crash-during-shutdown.patch
  - Add 0055-multipathd-avoid-io_err_stat-ABBA-deadlock.patch
  - Add 0056-multipathd-use-get_monotonic_time-in-io_err_stat-cod.patch
  - Add 0057-multipathd-combine-free_io_err_stat_path-and-destroy.patch
  - Add 0058-multipathd-cleanup-logging-for-marginal-paths.patch
    * The above 6 patches fix bz #1920795
  - Add 0059-libmpathpersist-fix-thread-safety-of-default-functio.patch
    * Fixes bz #1913549
  - Resolves: bz #1897815, #1913549, #1920795


author: Benjamin Marzinski <bmarzins@redhat.com> 0.8.4-9
changelog:
  - Add 0060-kpartx-free-loop-device-after-listing-partitions.patch
    * Fixes bz #1925490
  - Add 0061-RH-fix-find_multipaths-in-mpathconf.patch
    * Fixes bz #1921651
  - Resolves: bz #1921651, #1925490


author: Benjamin Marzinski <bmarzins@redhat.com> 0.8.4-11
changelog:
  - Add 0062-libmultipath-select_action-don-t-drop-map-if-alias-c.patch
    * Fall back to WWID names instead of removing existing device
  - Add 0063-libmultipath-check-if-user_friendly_name-is-in-use.patch
    * make sure to choose a user_friendly_name that isn't in use
    * Fixes bz #1937832
  - Add alias_clash CI test
  - Remove unused multipath.conf
  - Resolves: bz #1937832


author: Benjamin Marzinski <bmarzins@redhat.com> 0.8.4-12
changelog:
  - Add 0064-libmultipath-check-udev_device_get_-return-value-to-.patch
    * Fixes bz #1946940
  - Resolves: bz #1946940


author: Benjamin Marzinski <bmarzins@redhat.com> 0.8.4-13
changelog:
  - Add 0065-libmultipath-cleanup-code-to-strip-wwid-trailing-spa.patch
  - Add 0066-multipathd-add-recheck_wwid-option-to-verify-the-pat.patch
  - Add 0067-libmultipath-avoid-infinite-loop-with-bad-vpd-page-8.patch
  - Add 0068-libmultipath-fix-priorities-in-parse_vpd_pg83.patch
  - Add 0069-RH-make-parse_vpd_pg83-match-scsi_id-output.patch
  - Add 0070-multipathd-improve-getting-parent-udevice-in-rescan_.patch
  - Add 0071-multipathd-don-t-trigger-uevent-for-partitions-on-ww.patch
    * add recheck_wwid option
    * Fixes bz #1907904
  - Resolves: bz #1907904


author: Benjamin Marzinski <bmarzins@redhat.com> 0.8.4-17
changelog:
  - Add 0074-mpathpersist-fail-commands-when-no-usable-paths-exis.patch
    * Fixes bz #1984723
  - Add 0075-multipath-print-warning-if-multipathd-is-not-running.patch
    * Fixes bz #1973592
  - Add 0076-multipathd-don-t-access-path-if-it-was-deleted.patch
    * Found by coverity
  - Resolves: bz #1973592, #1984723


author: Benjamin Marzinski <bmarzins@redhat.com> 0.8.4-18
changelog:
  - Add 0077-multipathd.socket-add-missing-conditions-from-servic.patch
    * Fixes bz #2008101
  - Add 0078-libmulitpath-add-section-name-to-invalid-keyword-out.patch
    * Fixes bz #1918150
  - Resolves: bz #1918150, #2008101


author: Benjamin Marzinski <bmarzins@redhat.com> 0.8.4-20
changelog:
  - Add 0079-libmultipath-use-typedef-for-keyword-handler-and-pri.patch
  - Add 0080-libmultipath-print-the-correct-file-when-parsing-fai.patch
  - Add 0081-libmultipath-pass-file-and-line-number-to-keyword-ha.patch
  - Add 0082-libmultipath-make-set_int-take-a-range-for-valid-val.patch
  - Add 0083-libmultipath-improve-checks-for-set_str.patch
  - Add 0084-libmultipath-split-set_int-to-enable-reuse.patch
  - Add 0085-libmultipath-cleanup-invalid-config-handling.patch
  - Add 0086-libmultipath-don-t-return-error-on-invalid-values.patch
    * Above 8 patches fix bz #1900595
  - Add 0087-multipathd-avoid-unnecessary-path-read-only-reloads.patch
    * Fixes bz #2009624
  - Resolves: bz #1900595, #2009624, #2021823


author: Benjamin Marzinski <bmarzins@redhat.com> 0.8.4-21
changelog:
  - Add 0088-libmultipath-make-helper-function-to-trigger-path-ue.patch
  - Add 0089-multipathd-trigger-udev-change-on-path-addition.patch
  - Resolves: bz #1862032


author: Benjamin Marzinski <bmarzins@redhat.com> 0.8.4-23
changelog:
  - Add 0091-multipath-tools-add-HPE-MSA-1060-2060-to-hwtable.patch
    * Partial fix for bz #2058222
  - Add 0092-multipath-tools-update-mpp-force_readonly-in-ev_add_.patch
    * Fixes bz #2065468
  - Add 0093-updated-HPE-MSA-builtin-config.patch
    * Fixes bz #2058222
  - Resolves bz #2065468, #2058222


author: Benjamin Marzinski <bmarzins@redhat.com> 0.8.4-24
changelog:
  - Add 0094-multipath-return-failure-on-an-invalid-remove-comman.patch
    * Fixes bz #2052054
  - Add 0095-libmultipath-steal-the-src-string-pointer-in-merge_s.patch
  - Add 0096-libmultipath-enable-linear-ordering-of-bus-proto-tup.patch
  - Add 0097-libmultipath-use-bus_protocol_id-in-snprint_path_pro.patch
  - Add 0098-libmultipath-make-protocol_name-global.patch
  - Add 0099-libmultipath-add-a-protocol-subsection-to-multipath..patch
  - Add 0100-libmultipath-Set-the-scsi-timeout-parameters-by-path.patch
  - Add 0101-libmultipath-check-the-overrides-pctable-for-path-va.patch
  - Add 0102-libmultipath-fix-eh_deadline-documentation.patch
  - Add 0103-libmultipath-Add-documentation-for-the-protocol-subs.patch
  - Add 0104-libmultipath-use-symbolic-value-for-invalid-pcentry.patch
    * The above 10 patches implement feature from bz #2065477
  - Resolves: bz #2052054, #2065477


author: Benjamin Marzinski <bmarzins@redhat.com> 0.8.4-25
changelog:
  - Add 0105-multipathd-handle-fpin-events.patch
  - Add 0106-multipathd-disallow-changing-to-from-fpin-marginal-p.patch
  - Resolves: bz #2083077


author: Benjamin Marzinski <bmarzins@redhat.com> 0.8.4-27
changelog:
  - Add 0108-multipathd-Add-missing-ctype-include.patch
  - Add 0109-multipathd-replace-libreadline-with-libedit.patch
    * replace readline with libedit, to avoid license conflicts
  - Resolves: bz #2119887


author: Benjamin Marzinski <bmarzins@redhat.com> 0.8.4-30
changelog:
  - Add 0111-multipathd-factor-out-the-code-to-flush-a-map-with-n.patch
  - Add 0112-libmultipath-return-success-if-we-raced-to-remove-a-.patch
  - Add 0113-multipathd-Handle-losing-all-path-in-update_map.patch
  - Resolves: bz #2110485


author: Benjamin Marzinski <bmarzins@redhat.com> 0.8.4-31
changelog:
  - Add 0114-multipathd-ignore-duplicated-multipathd-command-keys.patch
    * Fixes bz #2133996
  - Add 0115-multipath-tools-use-run-instead-of-dev-shm.patch
    * Fixes bz #2133990
  - Resolves: bz #2133990, #2133996


author: Benjamin Marzinski <bmarzins@redhat.com> 0.8.4-32
changelog:
  - Add 0116-kpartx-hold-device-open-until-partitions-have-been-c.patch
    * Fixes bz #2128885
  - Add 0117-libmultipath-cleanup-remove_feature.patch
  - Add 0118-libmultipath-cleanup-add_feature.patch
  - Add 0119-multipath-tests-tests-for-adding-and-removing-featur.patch
  - Add 0120-libmultipath-fix-queue_mode-feature-handling.patch
  - Add 0121-multipath-tests-tests-for-reconcile_features_with_qu.patch
  - Add 0122-libmultipath-prepare-proto_id-for-use-by-non-scsi-de.patch
  - Add 0123-libmultipath-get-nvme-path-transport-protocol.patch
  - Add 0124-libmultipath-enforce-queue_mode-bio-for-nmve-tcp-pat.patch
    * Fixes bz #2022359
  - Resolves: bz #2022359, #2128885


author: Marian Csontos <mcsontos@redhat.com> - 0.8.5-3
changelog:
  - Remove obsolete pool-inactive option from thin_trim man page.
  - Check input file exists eralier, and prevent writing incorrect metadata.


author: Marian Csontos <mcsontos@redhat.com> - 0.9.0-1
changelog:
  - Update to upstream version 0.9.0.
  - Fix important issues found by static analysis.
  - Update crc32c to version 0.5 supporting non x86 architectures.
  - New tools thin_metadata_pack and thin_metadata_unpack.


author: Jaroslav Škarvada <jskarvad@redhat.com> - 4.0-1
changelog:
  - New version
    Resolves: rhbz#1333781
  - Switched to autotools
  - Various spec file cosmetic fixes (e.g. used optflags)


author: Pavel Valena <pvalena@redhat.com> - 049-221.git20221214
changelog:
  - fix(80lvmthinpool-monitor): use systemsctl instead of
  - fix(squash): build ld cache for squash loader
  - fix(network-manager): write DHCP filename option to dhcpopts


author: Pavel Valena <pvalena@redhat.com> - 049-231.git20231115
changelog:
  - fix(iscsi): do not exit in handle_netroot() if discovery
  - feat(systemd): install systemd-sysroot-fstab-check
  - fix(fcoe-uefi): exit early on empty vlan


author: Harald Hoyer <harald@redhat.com> 0.3-1
changelog:
  - version 0.3
  - see http://dracut.git.sourceforge.net/git/gitweb.cgi?p=dracut/dracut;a=blob_plain;f=NEWS


author: Harald Hoyer <harald@redhat.com> 0.4-1
changelog:
  - version 0.4
  - see http://dracut.git.sourceforge.net/git/gitweb.cgi?p=dracut/dracut;a=blob_plain;f=NEWS


author: Harald Hoyer <harald@redhat.com> 0.5-1
changelog:
  - version 0.5
  - see http://dracut.git.sourceforge.net/git/gitweb.cgi?p=dracut/dracut;a=blob_plain;f=NEWS


author: Harald Hoyer <harald@redhat.com> 0.6-1
changelog:
  - version 0.6
  - see http://dracut.git.sourceforge.net/git/gitweb.cgi?p=dracut/dracut;a=blob_plain;f=NEWS


author: Harald Hoyer <harald@redhat.com> 0.7-1
changelog:
  - version 0.7
  - see http://dracut.git.sourceforge.net/git/gitweb.cgi?p=dracut/dracut;a=blob_plain;f=NEWS


author: Harald Hoyer <harald@redhat.com> 0.8-1
changelog:
  - version 0.8 
  - see http://dracut.git.sourceforge.net/git/gitweb.cgi?p=dracut/dracut;a=blob_plain;f=NEWS


author: Harald Hoyer <harald@redhat.com> 001-1
changelog:
  - version 001
  - see http://dracut.git.sourceforge.net/git/gitweb.cgi?p=dracut/dracut;a=blob_plain;f=NEWS


author: Harald Hoyer <harald@redhat.com> 001-8
changelog:
  - plymouth: use plymouth-populate-initrd
  - add add_drivers for dracut and dracut.conf
  - do not mount /proc and /selinux manually in selinux-load-policy


author: Harald Hoyer <harald@redhat.com> 001-10
changelog:
  - add ifname= argument for persistent netdev names
  - new /initqueue-finished to check if the main loop can be left
  - copy mdadm.conf if --mdadmconf set or mdadmconf in dracut.conf


author: Harald Hoyer <harald@redhat.com> 002-3
changelog:
  - bail out if selinux policy could not be loaded and 
    selinux=0 not specified on kernel command line 
    (bug #524113)
  - set finished criteria for dmsquash live images


author: Warren Togami <wtogami@redaht.com> 002-5
changelog:
  - Revert back to -3, Add umount back to initrd
    This makes no functional difference to LiveCD.  See Bug #525319


author: Harald Hoyer <harald@redhat.com> 002-10
changelog:
  - do not destroy assembled raid arrays if mdadm.conf present
  - mount /dev/shm 
  - let udevd not resolve group and user names
  - preserve timestamps of tools on initramfs generation
  - generate symlinks for binaries correctly
  - moved network from udev to initqueue
  - mount nfs3 with nfsvers=3 option and retry with nfsvers=2
  - fixed nbd initqueue-finished
  - improved debug output: specifying "rdinitdebug" now logs
    to dmesg, console and /init.log
  - stop udev before killing it
  - add ghost /var/log/dracut.log
  - dmsquash: use info() and die() rather than echo
  - strip kernel modules which have no x bit set
  - redirect stdin, stdout, stderr all RW to /dev/console
    so the user can use "less" to view /init.log and dmesg


author: Harald Hoyer <harald@redhat.com> 002-13
changelog:
  - fixed init=<command> handling
  - kill loginit if "rdinitdebug" specified
  - run dmsquash-live-root after udev has settled (bug #527514)


author: Harald Hoyer <harald@redhat.com> 002-18
changelog:
  - renamed lvm/device-mapper udev rules according to upstream changes
  - fixed dracut search path issue


author: Harald Hoyer <harald@redhat.com> 002-22
changelog:
  - add module 90multipath
  - add module 01fips
  - renamed module 95ccw to 95znet (bug #533833)
  - crypt: ignore devices in /etc/crypttab (root is not in there)
  - dasd: only install /etc/dasd.conf in hostonly mode (bug #533833)
  - zfcp: only install /etc/zfcp.conf in hostonly mode (bug #533833)
  - kernel-modules: add scsi_dh scsi_dh_rdac scsi_dh_emc (bug #527750)
  - dasd: use dasdconf.sh from s390utils (bug #533833)


author: Harald Hoyer <harald@redhat.com> 002-26
changelog:
  - add WITH_SWITCH_ROOT make flag
  - add fips requirement conditional
  - add more device mapper modules (bug #539656)


author: Harald Hoyer <harald@redhat.com>
changelog:
  - fixed rpmlint errors (rhbz#570547)
  - removed firmware package from dracut-kernel (rhbz#572634)
  - add dcb support to dracut's FCoE support (rhbz#563794)
  - force install some modules in hostonly mode (rhbz#573094)
  - various other bugfixes
  - Resolves: rhbz#570547, rhbz#572634, rhbz#563794, rhbz#573094


author: Harald Hoyer <harald@redhat.com>
changelog:
  - fixed dracut manpages
  - dmraid parse different error messages
  - add cdrom polling mechanism for slow cdroms
  - add module btrfs
  - teach dmsquash live-root to use rootflags
  - trigger udev with action=add
  - fixed add_drivers handling 
  - add sr_mod
  - use pigz instead of gzip, if available


author: Harald Hoyer <harald@redhat.com>
changelog:
  - fixed network with multiple nics
  - fixed nfsidmap paths
  - do not run blkid on non active container raids
  - fixed cdrom polling mechanism
  - update to latest git


author: Harald Hoyer <harald@redhat.com>
changelog:
  - fixed dracut manpages 
  Resolves: rhbz#589109
  - use ccw-init and ccw rules from s390utils
  Resolves: rhbz#533494
  - fixed fcoe
  Resolves: rhbz#486244
  - various other bugfixes seen in Fedora


author: Harald Hoyer <harald@redhat.com>
changelog:
  - Remove requirements, which are not really needed
  Resolves: rhbz#598509
  - fixed copy of network config to /dev/.initramfs/ (patch 146)
  Resolves: rhbz#594649
  - more password beauty (patch 142)
  Resolves: rhbz#561092
  - support multiple iSCSI disks (patch 143)
  Resolves: rbhz#580190
  - fixed selinux=0 (patch 130)
  Resolves: rhbz#593080
  - add support for booting LVM snapshot root volume (patch 145)
  Resolves: rbhz#602723
  - remove hardware field from BOOTIF= (patch 148)
  Resolves: rhbz#599593
  - add aes kernel modules and fix crypt handling (patch 137, patch 140 and patch 147)
  Resolves: rhbz#600170


author: Harald Hoyer <harald@redhat.com> 008-2
changelog:
  - do not write dracut.log to /tmp under any circumstances
  - touch /dev/.systemd/plymouth after plymouth started


