[oe-commits] Graham Gower : opkg memory problem?

git version control git at git.openembedded.org
Sun Jan 24 10:39:20 UTC 2010


Module: openembedded.git
Branch: holger/staging-branch
Commit: 28451ef23faf965c79b3f2968c5a5667af1243e0
URL:    http://gitweb.openembedded.net/?p=openembedded.git&a=commit;h=28451ef23faf965c79b3f2968c5a5667af1243e0

Author: Graham Gower <graham.gower at gmail.com>
Date:   Thu Nov  5 12:49:24 2009 +0000

opkg memory problem?

01234567890123456789012345678901234567890123456789012345678901234567890123456789
When OE does 'opkg-cl install $EVERYTHING', all the memory leaks in opkg
start to accumulate. My guess is that somewhere a memory allocation failed
but was not checked for failure, then everything started to blow up.

Obviously, the memory leaks should be plugged (working on it...) and memory
allocations checked for failure (hopefully all sorted in opkg svn now). But
there's still a danger that large images will exhaust the supply of memory,
causing massive thrashing if nothing else.

The following is untested and only reduces that chances of this occuring,
but perhaps it makes sense to do something like this?

---

 classes/rootfs_ipk.bbclass |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/classes/rootfs_ipk.bbclass b/classes/rootfs_ipk.bbclass
index 16dd511..58e5f45 100644
--- a/classes/rootfs_ipk.bbclass
+++ b/classes/rootfs_ipk.bbclass
@@ -53,9 +53,9 @@ fakeroot rootfs_ipk_do_rootfs () {
 			done
 		fi
 	fi
-	if [ ! -z "${PACKAGE_INSTALL}" ]; then
-		opkg-cl ${IPKG_ARGS} install ${PACKAGE_INSTALL}
-	fi
+	for i in ${PACKAGE_INSTALL}; do
+		opkg-cl ${IPKG_ARGS} install $i
+	done
 
 	export D=${IMAGE_ROOTFS}
 	export OFFLINE_ROOT=${IMAGE_ROOTFS}





More information about the Openembedded-commits mailing list