Commit Debian 3.0 (quilt) metadata archive/raspbian/9.4.7-2+rpi1 raspbian/9.4.7-2+rpi1
authorPeter Michael Green <plugwash@raspbian.org>
Fri, 22 Dec 2023 05:28:03 +0000 (05:28 +0000)
committerPeter Michael Green <plugwash@raspbian.org>
Fri, 22 Dec 2023 05:28:03 +0000 (05:28 +0000)
[dgit (11.5) quilt-fixup]

debian/patches/replace-dmb-instruction-with-coprocessor.patch [new file with mode: 0644]
debian/patches/series

diff --git a/debian/patches/replace-dmb-instruction-with-coprocessor.patch b/debian/patches/replace-dmb-instruction-with-coprocessor.patch
new file mode 100644 (file)
index 0000000..d23b3a9
--- /dev/null
@@ -0,0 +1,39 @@
+From: Peter Michael Green <plugwash@raspbian.org>
+Date: Wed, 20 Dec 2023 21:29:26 +0000
+X-Dgit-Generated: 9.4.7-2+rpi1 1ce961d4ae4d23f33caae3141cb28811ce166b1d
+Subject: replace dmb instruction with coprocessor barrier instruction.
+
+
+---
+
+diff --git a/rts/include/stg/SMP.h b/rts/include/stg/SMP.h
+index 41cfc2c4..76ed1805 100644
+--- a/rts/include/stg/SMP.h
++++ b/rts/include/stg/SMP.h
+@@ -409,7 +409,7 @@ write_barrier(void) {
+ #elif defined(s390x_HOST_ARCH)
+     __asm__ __volatile__ ("" : : : "memory");
+ #elif defined(arm_HOST_ARCH) || defined(aarch64_HOST_ARCH)
+-    __asm__ __volatile__ ("dmb  st" : : : "memory");
++    __asm__ __volatile__ ("mcr p15, #0, r0, c7, c10, #5" : : : "memory");
+ #elif defined(riscv64_HOST_ARCH)
+     __asm__ __volatile__ ("fence w,w" : : : "memory");
+ #else
+@@ -431,7 +431,7 @@ store_load_barrier(void) {
+ #elif defined(s390x_HOST_ARCH)
+     __asm__ __volatile__ ("bcr 14,0" : : : "memory");
+ #elif defined(arm_HOST_ARCH)
+-    __asm__ __volatile__ ("dmb" : : : "memory");
++    __asm__ __volatile__ ("mcr p15, #0, r0, c7, c10, #5" : : : "memory");
+ #elif defined(aarch64_HOST_ARCH)
+     __asm__ __volatile__ ("dmb sy" : : : "memory");
+ #elif defined(riscv64_HOST_ARCH)
+@@ -455,7 +455,7 @@ load_load_barrier(void) {
+ #elif defined(s390x_HOST_ARCH)
+     __asm__ __volatile__ ("" : : : "memory");
+ #elif defined(arm_HOST_ARCH)
+-    __asm__ __volatile__ ("dmb" : : : "memory");
++    __asm__ __volatile__ ("mcr p15, #0, r0, c7, c10, #5" : : : "memory");
+ #elif defined(aarch64_HOST_ARCH)
+     __asm__ __volatile__ ("dmb ld" : : : "memory");
+ #elif defined(riscv64_HOST_ARCH)
index 67216a1a66f950d0a02daea63deb206156429876..6e6c8886f1dd4ad3065a5e0a8fc07deb064666d7 100644 (file)
@@ -22,3 +22,4 @@ hadrian-fix-dnosmp
 hadrian-enable-interpreter
 use-modern-atomics
 ppc64el-fix-clrri
+replace-dmb-instruction-with-coprocessor.patch