diff --git a/debian/changelog b/debian/changelog index d1dc13421..91316b651 100644 --- a/debian/changelog +++ b/debian/changelog @@ -8,6 +8,7 @@ linux (4.18~rc4-1~exp1) UNRELEASED; urgency=medium - linux-perf: Use Python 3 for scripts * autofs: rename 'autofs' module back to 'autofs4' (Closes: #902946) * udeb: Move of_mdio to nic-shared-modules (Closes: #903587) + * [armhf] mm: Export __sync_icache_dcache() for xen-privcmd (fixes FTBFS) -- Ben Hutchings Fri, 06 Jul 2018 20:55:47 +0100 diff --git a/debian/patches/bugfix/arm/arm-mm-export-__sync_icache_dcache-for-xen-privcmd.patch b/debian/patches/bugfix/arm/arm-mm-export-__sync_icache_dcache-for-xen-privcmd.patch new file mode 100644 index 000000000..a6f3257ea --- /dev/null +++ b/debian/patches/bugfix/arm/arm-mm-export-__sync_icache_dcache-for-xen-privcmd.patch @@ -0,0 +1,31 @@ +From: Ben Hutchings +Date: Wed, 11 Jul 2018 23:40:55 +0100 +Subject: ARM: mm: Export __sync_icache_dcache() for xen-privcmd +Forwarded: https://marc.info/?l=linux-arm-kernel&m=153134944429241 + +The xen-privcmd driver, which can be modular, calls set_pte_at() +which in turn may call __sync_icache_dcache(). + +The call to __sync_icache_dcache() may be optimised out because it is +conditional on !pte_special(), and xen-privcmd calls pte_mkspecial(). +However, in a non-LPAE configuration there is no "special" bit and the +call is really unconditional. + +Fixes: 3ad0876554ca ("xen/privcmd: add IOCTL_PRIVCMD_MMAP_RESOURCE") +Signed-off-by: Ben Hutchings +--- + arch/arm/mm/flush.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/arch/arm/mm/flush.c b/arch/arm/mm/flush.c +index 58469623b015..5345f86c56d2 100644 +--- a/arch/arm/mm/flush.c ++++ b/arch/arm/mm/flush.c +@@ -295,6 +295,7 @@ void __sync_icache_dcache(pte_t pteval) + if (pte_exec(pteval)) + __flush_icache_all(); + } ++EXPORT_SYMBOL_GPL(__sync_icache_dcache); + #endif + + /* diff --git a/debian/patches/series b/debian/patches/series index 1c89f96c0..3976363dc 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -65,6 +65,7 @@ bugfix/x86/perf-tools-fix-unwind-build-on-i386.patch bugfix/sh/sh-boot-do-not-use-hyphen-in-exported-variable-name.patch bugfix/x86/mmap-remember-the-map_fixed-flag-as-vm_fixed.patch bugfix/x86/mmap-add-an-exception-to-the-stack-gap-for-hotspot-jvm.patch +bugfix/arm/arm-mm-export-__sync_icache_dcache-for-xen-privcmd.patch # Arch features features/mips/MIPS-increase-MAX-PHYSMEM-BITS-on-Loongson-3-only.patch