aboutsummaryrefslogtreecommitdiffstats
path: root/meta/recipes-kernel/module-init-tools/files/grab_module_memset.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-kernel/module-init-tools/files/grab_module_memset.patch')
-rw-r--r--meta/recipes-kernel/module-init-tools/files/grab_module_memset.patch19
1 files changed, 19 insertions, 0 deletions
diff --git a/meta/recipes-kernel/module-init-tools/files/grab_module_memset.patch b/meta/recipes-kernel/module-init-tools/files/grab_module_memset.patch
new file mode 100644
index 0000000000..9550255315
--- /dev/null
+++ b/meta/recipes-kernel/module-init-tools/files/grab_module_memset.patch
@@ -0,0 +1,19 @@
+# this patch is from Mark Hatle <mark.hatle@windriver.com>, who ran into
+# a random segfault using the latest module-init-tools (3.12) and finally
+# trace back to depmod.c:grab_module, which appears that the new malloc(...)
+# setups up things, but never clears the memory that was just allocated.
+#
+# Kevin Tian <kevin.tian@intel.com>, 2010-08-06
+
+diff --git a/depmod.c b/depmod.c
+index 647e5e6..46e03e0 100644
+--- a/depmod.c
++++ b/depmod.c
+@@ -313,6 +313,7 @@ static struct module *grab_module(const char *dirname, const char *filename)
+
+ new = NOFAIL(malloc(sizeof(*new)
+ + strlen(dirname?:"") + 1 + strlen(filename) + 1));
++ memset(new, 0x00, sizeof(*new) + strlen(dirname?:"") + 1 + strlen(filename) + 1);
+ if (dirname)
+ sprintf(new->pathname, "%s/%s", dirname, filename);
+ else