qemu-devel
[Top][All Lists]
Advanced

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

Re: [PATCH] tests/docker: Kludge <linux/swab.h> breakage by pinning linu


From: Alex Bennée
Subject: Re: [PATCH] tests/docker: Kludge <linux/swab.h> breakage by pinning linux-libc-dev
Date: Wed, 13 May 2020 18:53:46 +0100
User-agent: mu4e 1.4.5; emacs 28.0.50

Salvatore Bonaccorso <address@hidden> writes:

> Hi,
>
> On Wed, May 13, 2020 at 04:15:48PM +0100, Alex Bennée wrote:
>> 
>> Philippe Mathieu-Daudé <address@hidden> writes:
>> 
>> > Linux kernel commit d5767057c9a [1] aimed to fix an issue with the
>> > swab() declaration, but doing so it introduced the BITS_PER_LONG
>> > definition, without using the kernel __ prefix, leading to odd
>> > failures in userland code using kernel uapi headers, such:
>> >
>> >       CC      block/file-posix.o
>> >     In file included from include/qemu/timer.h:4,
>> >                      from include/qemu/timed-average.h:29,
>> >                      from include/block/accounting.h:28,
>> >                      from include/block/block_int.h:27,
>> >                      from block/file-posix.c:30:
>> >     /usr/include/linux/swab.h: In function `__swab':
>> >     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)
>> >           |                                  ^~~~~~
>> >     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: *** [rules.mak:69: block/file-posix.o] Error 1
>> >
>> > The issue has been fixed in Linux kernel commit 467d12f5c78 [2].
>> > Some distributions already backported the first commit, but still
>> > lack the second one.
>> >
>> > This is the case for Debian Buster.
>> > The linux-libc-dev package contains the Linux kernel headers.
>> > Kernel commit d5767057c9a has been backported in package
>> > commit 1fb0eb7956 "Update to 4.19.116" [3], see debian/changelog:
>> >
>> >   +linux (4.19.116-1) UNRELEASED; urgency=medium
>> >   ...
>> >   +    - uapi: rename ext2_swab() to swab() and share globally in swab.h
>> >
>> > The previous released update before it is debian/4.19.98-1,
>> > released as debian/4.19.98-1+deb10u1.
>> >
>> > We can find this package in the Debian snapshot archives,
>> > luckily archived on 2020-04-28 21:20:54 (see [4]).
>> >
>> > QEMU use Debian based Docker images for most of its cross-builds,
>> > which are tested by our Shippable CI jobs. The current broken
>> > package makes most of our CI red. We can kludge this by using the
>> > latest package released before the breakage. Do so by pinning
>> > the package version (apt hold), and using the snapshot archives,
>> > similar to commit b4048a7cd1.
>> > We'll revert once the fix is backported on Debian.
>> 
>> May as well mention:
>> 
>>   https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=960271
>
> FWIW, we applied in the buster packaging branch
> https://salsa.debian.org/kernel-team/linux/-/commit/a4fb2a7b7688f3a7cb36e17b9d8c661ac44a41a4
>
> But the point release just happened last weekend, so it might take
> some time until the fix will enter either via the 10.5 point release
> or sooner by a needed update.

Thanks for the update. So I guess we wait for a CVE to trigger an early
release ;-)

-- 
Alex Bennée



reply via email to

[Prev in Thread] Current Thread [Next in Thread]