[linux] 01/01: Revert "Revert "arm64/mm: Limit TASK_SIZE_64 ..." and add breaks on incompatible mozjs"

debian-kernel at lists.debian.org debian-kernel at lists.debian.org
Sun Dec 11 02:16:35 UTC 2016


This is an automated email from the git hooks/post-receive script.

benh pushed a commit to branch master
in repository linux.

commit c7f834c8dc8843fe5e49c297581a6ac1345fe7bb
Author: Ben Hutchings <ben at decadent.org.uk>
Date:   Sun Dec 11 02:13:48 2016 +0000

    Revert "Revert "arm64/mm: Limit TASK_SIZE_64 ..." and add breaks on incompatible mozjs"
    
    This reverts commit a462c39f5dda2aa94d519d8baec23c3074a8d1e9.  mozjs24
    got 'fixed' in an ABI-compatible way that had to be reverted, so it's
    still broken.  Same for mozjs, though it hasn't been reverted yet.
    
    Also, Breaks relations against source package names would not have
    been very effective.
---
 debian/changelog                                   |  7 ------
 debian/config/arm64/defines                        |  1 -
 ...4-mm-limit-task_size_64-for-compatibility.patch | 27 ++++++++++++++++++++++
 debian/patches/series                              |  1 +
 4 files changed, 28 insertions(+), 8 deletions(-)

diff --git a/debian/changelog b/debian/changelog
index d1e3222..308ccdc 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,10 +1,3 @@
-linux (4.9~rc8-1~exp2) UNRELEASED; urgency=medium
-
-  * [arm64] Revert "arm64/mm: Limit TASK_SIZE_64 ..." and add breaks on
-    incompatible mozjs
-
- -- Ben Hutchings <ben at decadent.org.uk>  Fri, 09 Dec 2016 12:11:34 +0000
-
 linux (4.9~rc8-1~exp1) experimental; urgency=medium
 
   * New upstream release candidate
diff --git a/debian/config/arm64/defines b/debian/config/arm64/defines
index 209e6e8..6880132 100644
--- a/debian/config/arm64/defines
+++ b/debian/config/arm64/defines
@@ -10,7 +10,6 @@ vdso: true
 
 [image]
 install-stem: vmlinuz
-breaks: mozjs (<< 1.8.5-1.0.0+dfsg-5.1~), mozjs24 (<< 24.2.0-4~)
 
 [arm64_description]
 hardware: 64-bit ARMv8 machines
diff --git a/debian/patches/bugfix/arm64/arm64-mm-limit-task_size_64-for-compatibility.patch b/debian/patches/bugfix/arm64/arm64-mm-limit-task_size_64-for-compatibility.patch
new file mode 100644
index 0000000..bc8423b
--- /dev/null
+++ b/debian/patches/bugfix/arm64/arm64-mm-limit-task_size_64-for-compatibility.patch
@@ -0,0 +1,27 @@
+From: Ben Hutchings <ben at decadent.org.uk>
+Date: Fri, 16 Sep 2016 16:32:23 +0100
+Subject: arm64/mm: Limit TASK_SIZE_64 for compatibility
+
+Some programs assume they can use 17 tag bits in a 64-bit pointer,
+which works on most other 64-bit architectures but not on arm64 with
+CONFIG_ARM64_VA_BITS_48.  To maintain compatibility with these
+programs, limit TASK_SIZE_64 to a maximum of 1 << 47.
+
+Signed-off-by: Ben Hutchings <ben at decadent.org.uk>
+---
+
+--- a/arch/arm64/include/asm/memory.h
++++ b/arch/arm64/include/asm/memory.h
+@@ -74,7 +74,12 @@
+ #define PCI_IO_END		(VMEMMAP_START - SZ_2M)
+ #define PCI_IO_START		(PCI_IO_END - PCI_IO_SIZE)
+ #define FIXADDR_TOP		(PCI_IO_START - SZ_2M)
++#if VA_BITS <= 47
+ #define TASK_SIZE_64		(UL(1) << VA_BITS)
++#else
++/* User-space might use up to 17 tag bits in 64-bit pointers */
++#define TASK_SIZE_64		(UL(1) << 47)
++#endif
+ 
+ #ifdef CONFIG_COMPAT
+ #define TASK_SIZE_32		UL(0x100000000)
diff --git a/debian/patches/series b/debian/patches/series
index 265279e..dc04ae1 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -46,6 +46,7 @@ bugfix/x86/viafb-autoload-on-olpc-xo1.5-only.patch
 debian/fanotify-taint-on-use-of-fanotify_access_permissions.patch
 
 # Arch bug fixes
+bugfix/arm64/arm64-mm-limit-task_size_64-for-compatibility.patch
 
 # Arch features
 features/mips/MIPS-increase-MAX-PHYSMEM-BITS-on-Loongson-3-only.patch

-- 
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