If CONFIG_DEBUG_INFO is set, builddeb creates separate package with
debug information. To do that, debug information from all of the modules
is placed into separate file and is stripped from loadable modules by objcopy.
If CONFIG_MODULE_SIG_ALL was set, then after stripping  all modules'
signatures are gone. If at the same time CONFIG_MODULE_SIG_FORCE is set,
then result package with contains non-loadable modules.

This patch resign all stripped modules again to avoid any such problems.

Signed-off-by: Andrey Skvortsov <andrej.skvort...@gmail.com>
---
 scripts/package/builddeb |    6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/scripts/package/builddeb b/scripts/package/builddeb
index 88dbf23..977c4d7 100755
--- a/scripts/package/builddeb
+++ b/scripts/package/builddeb
@@ -162,6 +162,12 @@ if grep -q '^CONFIG_MODULES=y' $KCONFIG_CONFIG ; then
                        # then add a link to those
                        $OBJCOPY 
--add-gnu-debuglink=$dbg_dir/usr/lib/debug/$module $tmpdir/$module
                done
+
+                # resign stripped modules
+                MODULE_SIG_ALL="$(grep -s '^CONFIG_MODULE_SIG_ALL=y' 
$KCONFIG_CONFIG || true)"
+                if [ -n "$MODULE_SIG_ALL" ]; then
+                       INSTALL_MOD_PATH="$tmpdir" $MAKE KBUILD_SRC= 
modules_sign
+                fi
        fi
 fi
 
-- 
1.7.10.4

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to