From b65dc04712dfb8cc7bb9036c7c73b0cead6dd7c9 Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Thu, 16 Feb 2017 17:36:47 +0100 Subject: opkg: switch to own fork to improve memory usage Switch to our own fork of opkg to significantly reduce the required amount of memory when updating lists or installing packages. Preliminary tests showed a usage drop of about 90% during these operations, from ~3.7MB with unmodified opkg to ~360KB with our custom fork. Signed-off-by: Jo-Philipp Wich --- package/system/opkg/patches/110-upgrade.patch | 50 --------------------------- 1 file changed, 50 deletions(-) delete mode 100644 package/system/opkg/patches/110-upgrade.patch (limited to 'package/system/opkg/patches/110-upgrade.patch') diff --git a/package/system/opkg/patches/110-upgrade.patch b/package/system/opkg/patches/110-upgrade.patch deleted file mode 100644 index 61f454ae1c..0000000000 --- a/package/system/opkg/patches/110-upgrade.patch +++ /dev/null @@ -1,50 +0,0 @@ ---- a/libopkg/opkg_install.c -+++ b/libopkg/opkg_install.c -@@ -1405,9 +1405,11 @@ opkg_install_pkg(pkg_t *pkg, int from_up - opkg_state_changed++; - pkg->state_flag |= SF_FILELIST_CHANGED; - -- if (old_pkg) -+ if (old_pkg) { - pkg_remove_orphan_dependent(pkg, old_pkg); -- -+ old_pkg->is_upgrade = 1; -+ pkg->is_upgrade = 1; -+ } - /* XXX: BUG: we really should treat replacement more like an upgrade - * Instead, we're going to remove the replacees - */ -@@ -1466,7 +1468,7 @@ opkg_install_pkg(pkg_t *pkg, int from_up - } - - -- opkg_msg(INFO, "Installing maintainer scripts.\n"); -+ opkg_msg(INFO, "%s maintainer scripts.\n", (pkg->is_upgrade) ? ("Upgrading") : ("Installing")); - if (install_maintainer_scripts(pkg, old_pkg)) { - opkg_msg(ERROR, "Failed to extract maintainer scripts for %s." - " Package debris may remain!\n", ---- a/libopkg/pkg.c -+++ b/libopkg/pkg.c -@@ -1285,6 +1285,12 @@ pkg_run_script(pkg_t *pkg, const char *s - setenv("PKG_ROOT", - pkg->dest ? pkg->dest->root_dir : conf->default_dest->root_dir, 1); - -+ if (pkg->is_upgrade) -+ setenv("PKG_UPGRADE", "1", 1); -+ else -+ setenv("PKG_UPGRADE", "0", 1); -+ -+ - if (! file_exists(path)) { - free(path); - return 0; ---- a/libopkg/pkg.h -+++ b/libopkg/pkg.h -@@ -184,6 +184,7 @@ struct pkg - /* this flag specifies whether the package was installed to satisfy another - * package's dependancies */ - int auto_installed; -+ int is_upgrade; - }; - - pkg_t *pkg_new(void); -- cgit v1.2.3