diff options
Diffstat (limited to 'meta/recipes-devtools/python/python-smartpm')
-rw-r--r-- | meta/recipes-devtools/python/python-smartpm/smart-add-for-rpm-ignoresize-check.patch | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/meta/recipes-devtools/python/python-smartpm/smart-add-for-rpm-ignoresize-check.patch b/meta/recipes-devtools/python/python-smartpm/smart-add-for-rpm-ignoresize-check.patch new file mode 100644 index 0000000000..8a27f2583a --- /dev/null +++ b/meta/recipes-devtools/python/python-smartpm/smart-add-for-rpm-ignoresize-check.patch | |||
@@ -0,0 +1,37 @@ | |||
1 | python-smartpm: Add checking for "rpm-ignoresize" option | ||
2 | |||
3 | The do_rootfs takes a very long time when build host has mounted many NFS | ||
4 | devices. syscall lstat() was being called on every filesystem mounted on the | ||
5 | build host during building. | ||
6 | The reason for the lstat() is that rpm is verifying that enough free disk space | ||
7 | is available to do the install. However, since the install is into the target | ||
8 | rootfs it should not matter how much free space there is in the host mounts. | ||
9 | Add checking for "rpm-ignoresize", by it, smart can make whether RPM skip | ||
10 | checking for diskspace when install a rpm package. | ||
11 | |||
12 | Upstream-Status: Pending | ||
13 | |||
14 | Signed-off-by: wenlin.kang <wenlin.kang@windriver.com> | ||
15 | Signed-off-by: Chong Lu <Chong.Lu@windriver.com> | ||
16 | --- | ||
17 | smart/backends/rpm/pm.py | 4 ++++ | ||
18 | 1 file changed, 4 insertions(+) | ||
19 | |||
20 | diff --git a/smart/backends/rpm/pm.py b/smart/backends/rpm/pm.py | ||
21 | index 5da9ee6..f0488ec 100644 | ||
22 | --- a/smart/backends/rpm/pm.py | ||
23 | +++ b/smart/backends/rpm/pm.py | ||
24 | @@ -241,6 +241,10 @@ class RPMPackageManager(PackageManager): | ||
25 | except AttributeError: | ||
26 | probfilter |= rpm.RPMPROB_FILTER_IGNOREARCH | ||
27 | |||
28 | + if sysconf.get("rpm-ignoresize", False): | ||
29 | + probfilter |= rpm.RPMPROB_FILTER_DISKNODES | ||
30 | + probfilter |= rpm.RPMPROB_FILTER_DISKSPACE | ||
31 | + | ||
32 | if force or reinstall: | ||
33 | probfilter |= rpm.RPMPROB_FILTER_REPLACEPKG | ||
34 | probfilter |= rpm.RPMPROB_FILTER_REPLACEOLDFILES | ||
35 | -- | ||
36 | 1.9.1 | ||
37 | |||