1) Remove five patches for they have been merged in new version.
0001-udev-remove-unsupported-OPTIONS-event_timeout-rule.patch
0001-configure-Fix-setting-of-CLDFLAGS-default.patch
0001-activation-add-synchronization-point.patch
0002-activation-extend-handling-of-pending_delete.patch
0003-snapshot-always-activate.patch
Signed-off-by: Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
The OPTIONS+="event_timeout" is Unsupported since systemd/udev version 216,
that is ~5 years ago.
Since systemd/udev version 243, there's a new message printed if unsupported
OPTIONS value is used:
Invalid value for OPTIONS key, ignoring: 'event_timeout=180'
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1740666
The fix works on lvm2, it is not necessary for libdevmapper
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Backport a patch from upstream master that corrects the passing of
link flags through configure.
Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Run blkdeactivate failed:
...
root@intel-x86-64:~# /usr/sbin/blkdeactivate
Deactivating block devices:
/usr/sbin/blkdeactivate: line 345: /bin/lsblk: No such file or directory
/usr/sbin/blkdeactivate: line 345: /bin/sort: No such file or directory
/usr/sbin/blkdeactivate: line 345: /bin/lsblk: No such file or directory
/usr/sbin/blkdeactivate: line 384: SKIP_DEVICE_LIST: bad array subscript
...
- Add missing runtime depends
- Set location of the commands
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Previously, in order to fix circular dependencies, we split
libdm from lvm2 as a new recipe libdevmapper, and as running result
proved, we need to keep both of them built with the same configuration
option
With new configuration options added, it is hard to keep them the same,
so we make recipe libdevmapper to populate libdevmapper sysroot only,
and make lvm2 to provide package libdevmapper.
In this situation, option differ does not affect header and library API
between lvm2 and libdevmapper, although lvm2 and libdevmapper are different
at build time, but there is only one lvm2 at run time
Side effect:
- If one recipe DEPENDS on libdevmapper, it has to add libdevmapper to
its RDEPENDS or add lvm2 to DEPENDS, otherwise, there will be a
[file-rdeps] or [build-deps] QA warning
- It has to add `PREFERRED_RPROVIDER_libdevmapper = "lvm2"' to local.conf
to workaound 'Multiple providers' NOTE
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
While systemd enable cryptsetup (PACKAGECONFIG_append_pn-systemd = ' cryptsetup'),
there is a circular dependencies:
systemd -> systemd -> cryptsetup -> libdevmapper -> udev (PREFERRED_PROVIDER_udev = systemd)
The libdevmapper was used to break circular dependencies,
it does not require udev, refer commit [698d512 lvm2: Add a
PACKAGECONFIG for udev support] to move udev related from
lvm2.inc to lvm2.bb
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Commit c6e963f9e ("lvm2: Add RDEPEND on lvm2 to lvm2-udevrules") added
a package dependency due to lvm2-udevrules needs dmsetup, however
dmsetup was moved to libdevmapper in commit 269d009a81 ("lvm2:
libdevicemapper package needs udev rules and dmsetup"), so this
dependency should be only for libdevmapper instead of the full package.
With the current implementation, a package that has a dependency with
lvm2-udev rules will include also many unnecessary packages like lvm2,
lvm2-scripts, etc. and their dependencies.
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Upgrade lvm2/libdevmapper from 2.03.01 to 2.03.02.
* update SRC_URI back to use ftp url
- 2.03.02 has been released but no such tag in git repo
- subdir 'releases' on ftp site should be a persistent place for tarballs
* drop 0003-include-fcntl.h-for-O_-defines-and-fcntl-signature.patch
which is not needed any longer
* remove backpoort patch
* update patch contexts
Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
commit [57bb46c5e7f8] introduce this issue.
"/dev/hdc: open failed: No medium found" will be print out
after run lvmdiskscan. change dev_open_readonly()
to dev_open_readonly_quiet() in fuction _dev_get_size_dev().
Signed-off-by: Jiping Ma <jiping.ma2@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Issue:
vm2-monitor.service: Failed to create lvm2-monitor.service/start:
Unit lvm2-lvmetad.socket not found
lvmetad have been removed by upstream, but this part is missed,
backport fix from upstream
Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Since switch to github [a7bc7b6 lvm2/libdevmapper: 2.02.180 -> 2.03.01],
UPSTREAM_CHECK_URI and UPSTREAM_CHECK_REGEX is not necessary
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
The library parts are actually LGPL-2.1, not LGPL-2.0.
License-Update: The correct license is LGPL-2.1, not LGPL-2.0.
Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Some of the rules installed as part of lvm2-udevrules need to run dmsetup,
so add the dependency on lvm2 in order to ensure these can execute
correctly.
This fixes cryptsetup hanging when creating volumes.
Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Commit 6aa1dd223a ("lvm2/libdevmapper: fix invoking lvcreate failed")
moved installation of dmsetup back to lvm2 from libdevmapper, but dmsetup
had intentionally been moved to libdevmapper in commit 269d009a81
("lvm2: libdevicemapper package needs udev rules and dmsetup"). Add it back
to libdevmapper by explicitly installing it in do_install(), and refresh
explicitly-do-not-install-libdm.patch so that we also explicitly do not
install dmsetup as part of lvm2.
Signed-off-by: Andrew Bresticker <abrestic@waymo.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
When enable multilib and both lvm2 and multilib lvm2 such as lib32-lvm2
are installed to image, it causes install file conflict.
| file /etc/lvm/lvm.conf conflicts between attempted installs of
| lib32-lvm2-2.02.180-r0.x86 and lvm2-2.02.180-r0.core2_64
Inherit multilib_script to fix it.
Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
There are 2 GPL variations 'GPLv3' and 'GPLv3.0' for canonical (SPDX) form
of 'GPL-3.0' now. Refactoring code to use function
incompatible_license_contains() from license.bbclass to filter them all
to disable package config 'thin-provisioning-tools'.
Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
While systemd based, start lvm2-monitor.service failed.
...
|Sep 21 05:37:34 qemux86-64 lvm[389]: /var/lock: stat failed: No such
file or directory
|Sep 21 05:37:34 qemux86-64 systemd[1]: lvm2-monitor.service: Main
process exited, code=exited, status=5/NOTINSTALLED
...
The failure of lvm2-monitor.service caused reboot hung when disk
partion is lvm thin provision.
While starting lvm2-monitor.service, it reqires the existence of
locking dir "/var/lock" which is a symlink to "../run/lock" in oe-core,
and "/run" is created in "/etc/fstab" which have to be be after the
start of lvm2-monitor.service.
So tweak the locking dir to "/tmp/lock" and make sure the dir existence
(after tmp.mount).
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Disable thin provisioning support for lvm2 if it is set GPLv3
incompatible.
Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
On some host (ubuntu 1404), build manual failed.
...
./tools/man-generator --primary lvscan lvscan.8_des
Failed to stat description file lvscan.8_des.
...
Do not build man to workaround the issue.
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
If we enable 'cryptsetup' PACKAGECONFIG for systemd, there would be
circular dependency issue among 'systemd', 'cryptsetup' and 'lvm2'.
cryptsetup only needs libdevmapper from lvm2. So we separte libdevmapper
into a new recipe to solve this circular dependency issue.
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
lvm2-native doesn't have packages, so the RRECOMMENDS must be limited
to the target case. This fixes:
ERROR: Nothing RPROVIDES 'lvm2-native-scripts-native' (but virtual:native:.../meta-openembedded/meta-oe/recipes-support/lvm2/lvm2_2.02.166.bb RDEPENDS on or otherwise requires it)
Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Applications like kpartx and cryptsetup were broken by moving only
libdevicemapper itself into a separate package: as a result of that
change, lvm2 was not getting pulled into images anymore although
libdevicemapper depends on dmsetup and udev rules to be fully
functional.
For example, "kpartx -as" started to hang while waiting for the udev
rules to trigger, which is what creates the /dev/mapper/ entries for
the new partitions (see also
https://github.com/docker/docker/issues/22025#issuecomment-243943728).
Putting udev rules and dmsetup also into libdevicemapper is perhaps
counter-intuitive, but necessary to keep the package functioning. A
full lvm2 installation is guaranteed to pull them in, too, both
because of implicit library dependencies and (just to be sure) an
explicit RDEPENDS.
lvm2-native doesn't have packages, so this RDEPENDS must be limited to
the target case.
Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Rather than having the lvm2 package depend on bash, modify the init
scripts it may contain to use /bin/sh instead of /bin/bash.
Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
WARNING: lvm2-2.02.166-r0 do_package_qa: QA Issue: /etc/init.d/lvm2-monitor contained in package lvm2 requires /bin/bash, but no providers found in RDEPENDS_lvm2? [file-rdeps]
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
This allows, e.g., cryptsetup to use libdevmapper without having to
pull in all of lvm2.
Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
By putting the bash scripts in a separate package (lvm2-scripts), the
lvm2 package no longer needs to depend on bash. For backwards
compatibility, the lvm2 package recommends the lvm2-scripts package.
Also remove the adding of ${libdir}/device-mapper/.debug to
FILES_${PN}-dbg as it has not been needed since Krogoth.
Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
The added dependency on util-linux is necessary to avoid the following
QA warning which appears when the dependency on udev is removed:
WARNING: lvm2-2.02.166-r0 do_package_qa: QA Issue: lvm2 rdepends on
util-linux-libblkid, but it isn't a build dependency, missing
util-linux in DEPENDS or PACKAGECONFIG? [build-deps]
Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
The change in 4071e6b4b0 broke support for redefining PACKAGECONFIG in
a bbappend without having to resort to use PACKAGECONFIG_class-target.
Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Make sure that even if PACKAGECONFIG is modified in a bbappend,
odirect will still be enabled.
Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
This still satisfies the dependency, and allows lvm2 to be built when
packages that use GPL-3.0 have been disabled via INCOMPATIBLE_LICENSE.
Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>