mirror of
https://git.yoctoproject.org/git/poky
synced 2026-01-01 13:58:04 +00:00
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. (From OE-Core rev: fc0668a019eca422540ceab3efcd2b2a27dd79e0) Signed-off-by: Chong Lu <Chong.Lu@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
fd50427935
commit
d7cb96f28d
|
|
@ -838,6 +838,7 @@ class RpmPM(PackageManager):
|
|||
% prefer_color)
|
||||
|
||||
self._invoke_smart(cmd)
|
||||
self._invoke_smart('config --set rpm-ignoresize=1')
|
||||
|
||||
# Write common configuration for host and target usage
|
||||
self._invoke_smart('config --set rpm-nolinktos=1')
|
||||
|
|
|
|||
|
|
@ -0,0 +1,37 @@
|
|||
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(+)
|
||||
|
||||
diff --git a/smart/backends/rpm/pm.py b/smart/backends/rpm/pm.py
|
||||
index 5da9ee6..f0488ec 100644
|
||||
--- a/smart/backends/rpm/pm.py
|
||||
+++ b/smart/backends/rpm/pm.py
|
||||
@@ -241,6 +241,10 @@ class RPMPackageManager(PackageManager):
|
||||
except AttributeError:
|
||||
probfilter |= rpm.RPMPROB_FILTER_IGNOREARCH
|
||||
|
||||
+ 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
|
||||
--
|
||||
1.9.1
|
||||
|
||||
|
|
@ -33,6 +33,7 @@ SRC_URI = "\
|
|||
file://smart-attempt.patch \
|
||||
file://smart-filename-NAME_MAX.patch \
|
||||
file://smart-rpm4-fixes.patch \
|
||||
file://smart-add-for-rpm-ignoresize-check.patch \
|
||||
"
|
||||
|
||||
SRC_URI[md5sum] = "573ef32ba177a6b3c4bf7ef04873fcb6"
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user