poky/meta/recipes-devtools/python/python-smartpm/smart-add-for-rpm-ignoresize-check.patch
Joshua Lock 03fce7358d smartpm: remove rpm4 patch
The RPM4 support we added to SMART doesn't appear to work, remove
it as part of the removal of RPM4 from OE-Core.

Refresh the smart-add-for-rpm-ignoresize-check.patch which was
applied after smart-rpm4-fixes.patch and doesn't apply cleanly once
that patch is removed.

(From OE-Core rev: e1108fa41742e726aa578d0298fa6397b2663ff3)

Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-20 23:12:29 +00:00

36 lines
1.4 KiB
Diff

python-smartpm: Add checking for "rpm-ignoresize" option
The do_rootfs takes a very long time when build host has mounted many NFS
devices. syscall lstat() was being called on every filesystem mounted on the
build host during building.
The reason for the lstat() is that rpm is verifying that enough free disk space
is available to do the install. However, since the install is into the target
rootfs it should not matter how much free space there is in the host mounts.
Add checking for "rpm-ignoresize", by it, smart can make whether RPM skip
checking for diskspace when install a rpm package.
Upstream-Status: Pending
Signed-off-by: wenlin.kang <wenlin.kang@windriver.com>
Signed-off-by: Chong Lu <Chong.Lu@windriver.com>
---
smart/backends/rpm/pm.py | 4 ++++
1 file changed, 4 insertions(+)
Index: git/smart/backends/rpm/pm.py
===================================================================
--- git.orig/smart/backends/rpm/pm.py
+++ git/smart/backends/rpm/pm.py
@@ -233,6 +233,11 @@ class RPMPackageManager(PackageManager):
if sysconf.get("rpm-order"):
ts.order()
probfilter = rpm.RPMPROB_FILTER_OLDPACKAGE
+
+ if sysconf.get("rpm-ignoresize", False):
+ probfilter |= rpm.RPMPROB_FILTER_DISKNODES
+ probfilter |= rpm.RPMPROB_FILTER_DISKSPACE
+
if force or reinstall:
probfilter |= rpm.RPMPROB_FILTER_REPLACEPKG
probfilter |= rpm.RPMPROB_FILTER_REPLACEOLDFILES