[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#960271: PATCH



This patch adds Christian Borntraeger's patch (467d12f5c784) to the
package build. It seemed to build OK following these steps:

  wget https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.19.118.tar.xz
  ./debian/bin/genorig.py linux-4.19.118.tar.xz
  make -f debian/rules orig
  make -f debian/rules source
  dpkg-buildpackage

Once I install the package I can build QEMU again.

>From eb53234b3feb45f26e0a8ff36779d49ca8965fbe Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Alex=20Benn=C3=A9e?= <alex.bennee@linaro.org>
Date: Tue, 12 May 2020 11:36:37 +0100
Subject: [PATCH] uabi: fix breakage for compiling userspace (#960271)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
 debian/changelog                              |  6 ++
 ...ux-swab.h-fix-userspace-breakage-use.patch | 71 +++++++++++++++++++
 debian/patches/series                         |  1 +
 3 files changed, 78 insertions(+)
 create mode 100644 debian/patches/bugfix/all/include-uapi-linux-swab.h-fix-userspace-breakage-use.patch

diff --git a/debian/changelog b/debian/changelog
index 6cac52587efea..0d6d0d05f819e 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,9 @@
+linux (4.19.118-3) unstable; urgency=medium
+
+  * Fix uabi breakage (#960271)
+
+ -- Alex Bennée <alex.bennee@linaro.org>  Mon, 11 May 2020 20:03:06 +0100
+
 linux (4.19.118-2) buster; urgency=medium
 
   * Merge changes from 4.19.67-2+deb10u2 to include all security fixes from
diff --git a/debian/patches/bugfix/all/include-uapi-linux-swab.h-fix-userspace-breakage-use.patch b/debian/patches/bugfix/all/include-uapi-linux-swab.h-fix-userspace-breakage-use.patch
new file mode 100644
index 0000000000000..f78e55ce99a63
--- /dev/null
+++ b/debian/patches/bugfix/all/include-uapi-linux-swab.h-fix-userspace-breakage-use.patch
@@ -0,0 +1,71 @@
+From cb93a89a6b400dbb7a5e2e1106616c93745f734d Mon Sep 17 00:00:00 2001
+From: Christian Borntraeger <borntraeger@de.ibm.com>
+Date: Thu, 20 Feb 2020 20:04:03 -0800
+Subject: [PATCH] include/uapi/linux/swab.h: fix userspace breakage, use
+ __BITS_PER_LONG for swap
+
+QEMU has a funny new build error message when I use the upstream kernel
+headers:
+
+      CC      block/file-posix.o
+    In file included from /home/cborntra/REPOS/qemu/include/qemu/timer.h:4,
+                     from /home/cborntra/REPOS/qemu/include/qemu/timed-average.h:29,
+                     from /home/cborntra/REPOS/qemu/include/block/accounting.h:28,
+                     from /home/cborntra/REPOS/qemu/include/block/block_int.h:27,
+                     from /home/cborntra/REPOS/qemu/block/file-posix.c:30:
+    /usr/include/linux/swab.h: In function `__swab':
+    /home/cborntra/REPOS/qemu/include/qemu/bitops.h:20:34: error: "sizeof" is not defined, evaluates to 0 [-Werror=undef]
+       20 | #define BITS_PER_LONG           (sizeof (unsigned long) * BITS_PER_BYTE)
+          |                                  ^~~~~~
+    /home/cborntra/REPOS/qemu/include/qemu/bitops.h:20:41: error: missing binary operator before token "("
+       20 | #define BITS_PER_LONG           (sizeof (unsigned long) * BITS_PER_BYTE)
+          |                                         ^
+    cc1: all warnings being treated as errors
+    make: *** [/home/cborntra/REPOS/qemu/rules.mak:69: block/file-posix.o] Error 1
+    rm tests/qemu-iotests/socket_scm_helper.o
+
+This was triggered by commit d5767057c9a ("uapi: rename ext2_swab() to
+swab() and share globally in swab.h").  That patch is doing
+
+  #include <asm/bitsperlong.h>
+
+but it uses BITS_PER_LONG.
+
+The kernel file asm/bitsperlong.h provide only __BITS_PER_LONG.
+
+Let us use the __ variant in swap.h
+
+Link: http://lkml.kernel.org/r/20200213142147.17604-1-borntraeger@de.ibm.com
+Fixes: d5767057c9a ("uapi: rename ext2_swab() to swab() and share globally in swab.h")
+Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
+Cc: Yury Norov <yury.norov@gmail.com>
+Cc: Allison Randal <allison@lohutok.net>
+Cc: Joe Perches <joe@perches.com>
+Cc: Thomas Gleixner <tglx@linutronix.de>
+Cc: William Breathitt Gray <vilhelm.gray@gmail.com>
+Cc: Torsten Hilbrich <torsten.hilbrich@secunet.com>
+Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
+Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
+---
+ include/uapi/linux/swab.h | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/include/uapi/linux/swab.h b/include/uapi/linux/swab.h
+index fa7f97da5b768..7272f85d6d6ab 100644
+--- a/include/uapi/linux/swab.h
++++ b/include/uapi/linux/swab.h
+@@ -135,9 +135,9 @@ static inline __attribute_const__ __u32 __fswahb32(__u32 val)
+ 
+ static __always_inline unsigned long __swab(const unsigned long y)
+ {
+-#if BITS_PER_LONG == 64
++#if __BITS_PER_LONG == 64
+ 	return __swab64(y);
+-#else /* BITS_PER_LONG == 32 */
++#else /* __BITS_PER_LONG == 32 */
+ 	return __swab32(y);
+ #endif
+ }
+-- 
+2.20.1
+
diff --git a/debian/patches/series b/debian/patches/series
index c4eedde94a350..0b32d63827c04 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -302,3 +302,4 @@ bugfix/all/blktrace-fix-dereference-after-null-check.patch
 bugfix/s390x/s390-mm-fix-page-table-upgrade-vs-2ndary-address-mod.patch
 
 # ABI maintenance
+bugfix/all/include-uapi-linux-swab.h-fix-userspace-breakage-use.patch
-- 
2.20.1


-- 
Alex Bennée

Reply to: