[arch-commits] Commit in kmod/trunk (3 files)

Dave Reisner dreisner at archlinux.org
Thu Nov 8 13:48:58 UTC 2012


    Date: Thursday, November 8, 2012 @ 08:48:58
  Author: dreisner
Revision: 170542

upgpkg: kmod 11-1

- drop backports
- upstream update

Modified:
  kmod/trunk/PKGBUILD
Deleted:
  kmod/trunk/0001-depmod-fix-parsing-of-modules.order-with-compressed-.patch
  kmod/trunk/0001-libkmod-Add-support-for-.-in-module-parameter-on-kcm.patch

-----------------------------------------------------------------+
 0001-depmod-fix-parsing-of-modules.order-with-compressed-.patch |  165 ----------
 0001-libkmod-Add-support-for-.-in-module-parameter-on-kcm.patch |   33 --
 PKGBUILD                                                        |   16 
 3 files changed, 3 insertions(+), 211 deletions(-)

Deleted: 0001-depmod-fix-parsing-of-modules.order-with-compressed-.patch
===================================================================
--- 0001-depmod-fix-parsing-of-modules.order-with-compressed-.patch	2012-11-08 12:12:44 UTC (rev 170541)
+++ 0001-depmod-fix-parsing-of-modules.order-with-compressed-.patch	2012-11-08 13:48:58 UTC (rev 170542)
@@ -1,165 +0,0 @@
-From 88c247f7f18ac25181ddcaff97fbbecbd3a29f57 Mon Sep 17 00:00:00 2001
-From: Lucas De Marchi <lucas.de.marchi at gmail.com>
-Date: Wed, 3 Oct 2012 16:28:24 -0300
-Subject: [PATCH] depmod: fix parsing of modules.order with compressed modules
-
-We now index the modules by uncompressed-relative-path instead of
-relative-path. This is because the file modules.order, coming from
-kernel, always comes with uncompressed paths. This fixes the issue of
-not sorting the aliases correctly due to paths not matching when using
-compressed modules.
----
- tools/depmod.c | 46 +++++++++++++++++++++++++++++-----------------
- 1 file changed, 29 insertions(+), 17 deletions(-)
-
-diff --git a/tools/depmod.c b/tools/depmod.c
-index 0bf2dea..ff19d6e 100644
---- a/tools/depmod.c
-+++ b/tools/depmod.c
-@@ -39,6 +39,8 @@
- #define DEFAULT_VERBOSE LOG_WARNING
- static int verbose = DEFAULT_VERBOSE;
- 
-+#define KMOD_EXT_UNC 0
-+
- static const struct kmod_ext {
- 	const char *ext;
- 	size_t len;
-@@ -1001,6 +1003,7 @@ struct mod {
- 	uint16_t idx; /* index in depmod->modules.array */
- 	uint16_t users; /* how many modules depend on this one */
- 	uint8_t dep_loop : 1;
-+	char *uncrelpath; /* same as relpath but ending in .ko */
- 	char modname[];
- };
- 
-@@ -1014,7 +1017,7 @@ struct depmod {
- 	const struct cfg *cfg;
- 	struct kmod_ctx *ctx;
- 	struct array modules;
--	struct hash *modules_by_relpath;
-+	struct hash *modules_by_uncrelpath;
- 	struct hash *modules_by_name;
- 	struct hash *symbols;
- 	unsigned int dep_loops;
-@@ -1025,6 +1028,7 @@ static void mod_free(struct mod *mod)
- 	DBG("free %p kmod=%p, path=%s\n", mod, mod->kmod, mod->path);
- 	array_free_array(&mod->deps);
- 	kmod_module_unref(mod->kmod);
-+	free(mod->uncrelpath);
- 	free(mod);
- }
- 
-@@ -1066,10 +1070,10 @@ static int depmod_init(struct depmod *depmod, struct cfg *cfg,
- 
- 	array_init(&depmod->modules, 128);
- 
--	depmod->modules_by_relpath = hash_new(512, NULL);
--	if (depmod->modules_by_relpath == NULL) {
-+	depmod->modules_by_uncrelpath = hash_new(512, NULL);
-+	if (depmod->modules_by_uncrelpath == NULL) {
- 		err = -errno;
--		goto modules_by_relpath_failed;
-+		goto modules_by_uncrelpath_failed;
- 	}
- 
- 	depmod->modules_by_name = hash_new(512, NULL);
-@@ -1089,8 +1093,8 @@ static int depmod_init(struct depmod *depmod, struct cfg *cfg,
- symbols_failed:
- 	hash_free(depmod->modules_by_name);
- modules_by_name_failed:
--	hash_free(depmod->modules_by_relpath);
--modules_by_relpath_failed:
-+	hash_free(depmod->modules_by_uncrelpath);
-+modules_by_uncrelpath_failed:
- 	return err;
- }
- 
-@@ -1100,7 +1104,7 @@ static void depmod_shutdown(struct depmod *depmod)
- 
- 	hash_free(depmod->symbols);
- 
--	hash_free(depmod->modules_by_relpath);
-+	hash_free(depmod->modules_by_uncrelpath);
- 
- 	hash_free(depmod->modules_by_name);
- 
-@@ -1114,7 +1118,7 @@ static void depmod_shutdown(struct depmod *depmod)
- static int depmod_module_add(struct depmod *depmod, struct kmod_module *kmod)
- {
- 	const struct cfg *cfg = depmod->cfg;
--	const char *modname;
-+	const char *modname, *lastslash;
- 	size_t modnamelen;
- 	struct mod *mod;
- 	int err;
-@@ -1134,7 +1138,8 @@ static int depmod_module_add(struct depmod *depmod, struct kmod_module *kmod)
- 	array_init(&mod->deps, 4);
- 
- 	mod->path = kmod_module_get_path(kmod);
--	mod->baselen = strrchr(mod->path, '/') - mod->path;
-+	lastslash = strrchr(mod->path, '/');
-+	mod->baselen = lastslash - mod->path;
- 	if (strncmp(mod->path, cfg->dirname, cfg->dirnamelen) == 0 &&
- 			mod->path[cfg->dirnamelen] == '/')
- 		mod->relpath = mod->path + cfg->dirnamelen + 1;
-@@ -1144,25 +1149,32 @@ static int depmod_module_add(struct depmod *depmod, struct kmod_module *kmod)
- 	err = hash_add_unique(depmod->modules_by_name, mod->modname, mod);
- 	if (err < 0) {
- 		ERR("hash_add_unique %s: %s\n", mod->modname, strerror(-err));
--		free(mod);
--		return err;
-+		goto fail;
- 	}
- 
- 	if (mod->relpath != NULL) {
--		err = hash_add_unique(depmod->modules_by_relpath,
--				      mod->relpath, mod);
-+		size_t uncrelpathlen = lastslash - mod->relpath + modnamelen
-+				       + kmod_exts[KMOD_EXT_UNC].len;
-+		mod->uncrelpath = memdup(mod->relpath, uncrelpathlen + 1);
-+		mod->uncrelpath[uncrelpathlen] = '\0';
-+		err = hash_add_unique(depmod->modules_by_uncrelpath,
-+				      mod->uncrelpath, mod);
- 		if (err < 0) {
- 			ERR("hash_add_unique %s: %s\n",
- 			    mod->relpath, strerror(-err));
- 			hash_del(depmod->modules_by_name, mod->modname);
--			free(mod);
--			return err;
-+			goto fail;
- 		}
- 	}
- 
- 	DBG("add %p kmod=%p, path=%s\n", mod, kmod, mod->path);
- 
- 	return 0;
-+
-+fail:
-+	free(mod->uncrelpath);
-+	free(mod);
-+	return err;
- }
- 
- static int depmod_module_del(struct depmod *depmod, struct mod *mod)
-@@ -1170,7 +1182,7 @@ static int depmod_module_del(struct depmod *depmod, struct mod *mod)
- 	DBG("del %p kmod=%p, path=%s\n", mod, mod->kmod, mod->path);
- 
- 	if (mod->relpath != NULL)
--		hash_del(depmod->modules_by_relpath, mod->relpath);
-+		hash_del(depmod->modules_by_uncrelpath, mod->relpath);
- 
- 	hash_del(depmod->modules_by_name, mod->modname);
- 
-@@ -1472,7 +1484,7 @@ static void depmod_modules_sort(struct depmod *depmod)
- 			continue;
- 		line[len - 1] = '\0';
- 
--		mod = hash_find(depmod->modules_by_relpath, line);
-+		mod = hash_find(depmod->modules_by_uncrelpath, line);
- 		if (mod == NULL)
- 			continue;
- 		mod->sort_idx = idx - total;
--- 
-1.7.12.4
-

Deleted: 0001-libkmod-Add-support-for-.-in-module-parameter-on-kcm.patch
===================================================================
--- 0001-libkmod-Add-support-for-.-in-module-parameter-on-kcm.patch	2012-11-08 12:12:44 UTC (rev 170541)
+++ 0001-libkmod-Add-support-for-.-in-module-parameter-on-kcm.patch	2012-11-08 13:48:58 UTC (rev 170542)
@@ -1,33 +0,0 @@
-From 66f3228d17d66d7e2dd484427259290fbc82b2f0 Mon Sep 17 00:00:00 2001
-From: Lucas De Marchi <lucas.demarchi at profusion.mobi>
-Date: Mon, 8 Oct 2012 19:04:16 -0300
-Subject: [PATCH] libkmod: Add support for '.' in module parameter on kcmdline
-
-Otherwise we fail to parse arguments in kernel command line like
-testmodule.testparam=1.5G
-
-Suggested-by: Selim T. Erdogan <selim at alumni.cs.utexas.edu>
----
- libkmod/libkmod-config.c | 6 ++++--
- 1 file changed, 4 insertions(+), 2 deletions(-)
-
-diff --git a/libkmod/libkmod-config.c b/libkmod/libkmod-config.c
-index 70044f0..398468e 100644
---- a/libkmod/libkmod-config.c
-+++ b/libkmod/libkmod-config.c
-@@ -567,8 +567,10 @@ static int kmod_config_parse_kcmdline(struct kmod_config *config)
- 			modname = p + 1;
- 			break;
- 		case '.':
--			*p = '\0';
--			param = p + 1;
-+			if (param == NULL) {
-+				*p = '\0';
-+				param = p + 1;
-+			}
- 			break;
- 		case '=':
- 			if (param != NULL)
--- 
-1.7.12.4
-

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2012-11-08 12:12:44 UTC (rev 170541)
+++ PKGBUILD	2012-11-08 13:48:58 UTC (rev 170542)
@@ -2,8 +2,8 @@
 # Maintainer: Dave Reisner <dreisner at archlinux.org>
 
 pkgname=kmod
-pkgver=10
-pkgrel=2
+pkgver=11
+pkgrel=1
 pkgdesc="Linux kernel module handling"
 arch=('i686' 'x86_64')
 url='http://git.kernel.org/?p=utils/kernel/kmod/kmod.git;a=summary'
@@ -15,23 +15,13 @@
 conflicts=('module-init-tools')
 replaces=('module-init-tools')
 source=("ftp://ftp.kernel.org/pub/linux/utils/kernel/$pkgname/$pkgname-$pkgver.tar.xz"
-        '0001-depmod-fix-parsing-of-modules.order-with-compressed-.patch'
-        '0001-libkmod-Add-support-for-.-in-module-parameter-on-kcm.patch'
         "depmod-search.conf")
-md5sums=('e2a883c4df15a50f78a7a61d5b64089f'
-         '47005a6e70496d429d40e3fc4fd89755'
-         'ecf5bfd4fd9ed14cf0dc1ce4025d256b'
+md5sums=('607e33b0144625c2e5221e5a7df49c7a'
          'dd62cbf62bd8f212f51ef8c43bec9a77')
 
 build() {
   cd "$pkgname-$pkgver"
 
-  # upstream commit 88c247f7f18ac25181ddcaff97fbbecbd3a29f57
-  patch -Np1 < "$srcdir/0001-depmod-fix-parsing-of-modules.order-with-compressed-.patch"
-
-  # upstream commit 66f3228d17d66d7e2dd484427259290fbc82b2f0
-  patch -Np1 < "$srcdir/0001-libkmod-Add-support-for-.-in-module-parameter-on-kcm.patch"
-
   ./configure \
     --sysconfdir=/etc \
     --enable-gtk-doc \




More information about the arch-commits mailing list