[linux] 01/01: [sparc64] Update "Revert "sparc: move exports to definitions"" again
debian-kernel at lists.debian.org
debian-kernel at lists.debian.org
Tue Jul 18 21:56:33 UTC 2017
This is an automated email from the git hooks/post-receive script.
benh pushed a commit to branch master
in repository linux.
commit aaafbb9091cd282fb5772b296e4729bc007a1996
Author: Ben Hutchings <ben at decadent.org.uk>
Date: Tue Jul 18 22:50:53 2017 +0100
[sparc64] Update "Revert "sparc: move exports to definitions"" again
This should really fix the FTBFS - at least, the build got as far as
building linux-image packages.
genksyms doesn't recognise __int128 as a type name, so fails to parse
the prototype for __multi3(). I could fix genksyms but would have to
regenerate the parser tables which would be a horrible patch to
maintan. So use a struct type instead for now. gcc doesn't seem to
care about this because it isn't a normal C function.
Also update the patch properly for 4.12 - I removed exports for some
symbols that were not really removed but renamed.
---
debian/changelog | 2 ++
.../sparc/revert-sparc-move-exports-to-definitions.patch | 16 +++++++++++++---
2 files changed, 15 insertions(+), 3 deletions(-)
diff --git a/debian/changelog b/debian/changelog
index 3741060..6f2f8e7 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,6 +1,8 @@
linux (4.12.2-1~exp2) UNRELEASED; urgency=medium
* media: Enable USB_RAINSHADOW_CEC as module (see #868511)
+ * [sparc64] Update "Revert "sparc: move exports to definitions"" again
+ (really fixes FTBFS)
-- Ben Hutchings <ben at decadent.org.uk> Tue, 18 Jul 2017 13:26:41 +0100
diff --git a/debian/patches/bugfix/sparc/revert-sparc-move-exports-to-definitions.patch b/debian/patches/bugfix/sparc/revert-sparc-move-exports-to-definitions.patch
index 7904f58..093c654 100644
--- a/debian/patches/bugfix/sparc/revert-sparc-move-exports-to-definitions.patch
+++ b/debian/patches/bugfix/sparc/revert-sparc-move-exports-to-definitions.patch
@@ -272,7 +272,7 @@ did what it says; add a prototype and export it from C code instead.
+EXPORT_SYMBOL(saved_command_line);
--- /dev/null
+++ b/arch/sparc/kernel/sparc_ksyms_64.c
-@@ -0,0 +1,56 @@
+@@ -0,0 +1,58 @@
+/* arch/sparc64/kernel/sparc64_ksyms.c: Sparc64 specific ksyms support.
+ *
+ * Copyright (C) 1996, 2007 David S. Miller (davem at davemloft.net)
@@ -324,7 +324,9 @@ did what it says; add a prototype and export it from C code instead.
+EXPORT_SYMBOL(__ffs);
+
+/* from multi3.S */
-+asmlinkage __int128 __multi3(__int128, __int128);
++/* XXX should teach genksyms about __int128 */
++typedef struct fake_int128 { long long a, b; } __aligned(16) fake_int128;
++asmlinkage fake_int128 __multi3(fake_int128, fake_int128);
+EXPORT_SYMBOL(__multi3);
+
+/* Exporting a symbol from /init/main.c */
@@ -650,6 +652,11 @@ did what it says; add a prototype and export it from C code instead.
#define XCC xcc
+@@ -106,4 +105,3 @@ ENTRY(raw_copy_in_user) /* %o0=dst, %o1=
+ retl
+ clr %o0
+ ENDPROC(raw_copy_in_user)
+-EXPORT_SYMBOL(raw_copy_in_user)
--- a/arch/sparc/lib/copy_page.S
+++ b/arch/sparc/lib/copy_page.S
@@ -10,7 +10,6 @@
@@ -792,7 +799,7 @@ did what it says; add a prototype and export it from C code instead.
-EXPORT_SYMBOL(ip_fast_csum)
--- /dev/null
+++ b/arch/sparc/lib/ksyms.c
-@@ -0,0 +1,170 @@
+@@ -0,0 +1,173 @@
+/*
+ * Export of symbols defined in assembler
+ */
@@ -887,6 +894,9 @@ did what it says; add a prototype and export it from C code instead.
+EXPORT_SYMBOL(ip_fast_csum);
+
+/* Moving data to/from/in userspace. */
++EXPORT_SYMBOL(raw_copy_to_user);
++EXPORT_SYMBOL(raw_copy_from_user);
++EXPORT_SYMBOL(raw_copy_in_user);
+EXPORT_SYMBOL(__clear_user);
+
+/* Atomic counter implementation. */
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/kernel/linux.git
More information about the Kernel-svn-changes
mailing list