summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBen Hutchings <ben@decadent.org.uk>2016-12-05 01:07:36 +0000
committerBen Hutchings <ben@decadent.org.uk>2016-12-05 01:07:36 +0000
commitb3906798a83f8c0cf26d3be6b055e03264426e63 (patch)
treec8e5cea5878f9a048c64802760d94a4b9d0a574d
parent1c1ab88dbe34fc9094c941b4ac66934126cc310a (diff)
Revert "default exported asm symbols to zero"
-rw-r--r--debian/changelog1
-rw-r--r--debian/patches/bugfix/all/revert-default-exported-asm-symbols-to-zero.patch28
-rw-r--r--debian/patches/series1
3 files changed, 30 insertions, 0 deletions
diff --git a/debian/changelog b/debian/changelog
index ce86b9cfa..143c5dde9 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -7,6 +7,7 @@ linux (4.9~rc8-1~exp1) UNRELEASED; urgency=medium
* [amd64] Remove xen-linux-system-<version> package
* debian/control: Fix build-dependency on flex to work with new versions
that have M-A: allowed
+ * Revert "default exported asm symbols to zero"
-- Ben Hutchings <ben@decadent.org.uk> Sat, 03 Dec 2016 02:54:32 +0000
diff --git a/debian/patches/bugfix/all/revert-default-exported-asm-symbols-to-zero.patch b/debian/patches/bugfix/all/revert-default-exported-asm-symbols-to-zero.patch
new file mode 100644
index 000000000..267d79a9d
--- /dev/null
+++ b/debian/patches/bugfix/all/revert-default-exported-asm-symbols-to-zero.patch
@@ -0,0 +1,28 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Mon, 5 Dec 2016 01:03:15 +0000
+Subject: Revert "default exported asm symbols to zero"
+
+This reverts commit 8ab2ae655bfe384335c5b6b0d6041e0ddce26b00, which
+broke asm symbol versioning when I tried it:
+
+> I tried this along with Adam's patch on x86_64, with Debian's binutils
+> 2.27.51.20161127. The result was that the kernel's __kcrctab held 0
+> for several symbols, even though there was type information in asm-
+> prototypes.h and Module.symvers and the modules had a non-zero CRC for
+> those symbols. With just Adam's patch, the kernel and modules agreed.
+---
+ include/asm-generic/export.h | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/include/asm-generic/export.h b/include/asm-generic/export.h
+index 59a3b2f58c22..63554e9f6e0c 100644
+--- a/include/asm-generic/export.h
++++ b/include/asm-generic/export.h
+@@ -54,7 +54,6 @@ KSYM(__kstrtab_\name):
+ KSYM(__kcrctab_\name):
+ __put KSYM(__crc_\name)
+ .weak KSYM(__crc_\name)
+- .set KSYM(__crc_\name), 0
+ .previous
+ #endif
+ #endif
diff --git a/debian/patches/series b/debian/patches/series
index f91f73891..dc04ae16f 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -103,6 +103,7 @@ bugfix/x86/x86-kbuild-enable-modversions-for-symbols-exported-f.patch
bugfix/powerpc/powerpc-remove-mac-on-linux-hooks.patch
bugfix/powerpc/powerpc-fix-missing-crcs-add-yet-more-asm-prototypes.patch
bugfix/all/module-disable-matching-missing-version-crc.patch
+bugfix/all/revert-default-exported-asm-symbols-to-zero.patch
# ABI maintenance