[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PULL 00/10] Migration 20230509 patches
From: |
Juan Quintela |
Subject: |
Re: [PULL 00/10] Migration 20230509 patches |
Date: |
Wed, 10 May 2023 16:08:35 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux) |
Richard Henderson <richard.henderson@linaro.org> wrote:
> On 5/10/23 13:20, Juan Quintela wrote:
>> Richard Henderson <richard.henderson@linaro.org> wrote:
>>> On 5/9/23 20:17, Juan Quintela wrote:
>>>> The following changes since commit
>>>> 271477b59e723250f17a7e20f139262057921b6a:
>>>> Merge tag 'compression-code-pull-request' of
>>>> https://gitlab.com/juan.quintela/qemu into staging (2023-05-08
>>>> 20:38:05 +0100)
>>>> are available in the Git repository at:
>>>> https://gitlab.com/juan.quintela/qemu.git
>>>> tags/migration-20230509-pull-request
>>>> for you to fetch changes up to
>>>> 5f43d297bc2b9530805ad8602c6e2ea284b08628:
>>>> migration: block incoming colo when capability is disabled
>>>> (2023-05-09 20:52:21 +0200)
>>>> ----------------------------------------------------------------
>>>> Migration Pull request (20230509 vintage)
>>>> Hi
>>>> In this PULL request:
>>>> - 1st part of colo support for multifd (lukas)
>>>> - 1st part of disabling colo option (vladimir)
>>>> Please, apply.
>>>
>>> Build failures.
>>>
>>> https://gitlab.com/qemu-project/qemu/-/jobs/4257605099#L2241
>>>
>>> 85 | void colo_record_bitmap(RAMBlock *block, ram_addr_t *normal, uint
>>> normal_num);
>>> | ^~~~
>>> | u_int
>>>
>> Grrr
>> And the worst thing is that hate those types, tried to get then out
>> long, long ago for a similar problem.
While I was not looking, some of them were corrected:
commit d7df0b41dc38327388c3f19fdf4246793d4a1e4b
Author: Marc-André Lureau <marcandre.lureau@redhat.com>
Date: Thu Jan 17 15:43:53 2019 +0400
slirp: prefer c99 types over BSD kind
Replace:
- u_char -> uint8_t
- u_short -> uint16_t
- u_long -> uint32_t
- u_int -> unsigned
- caddr_t -> char *
> Where do these types come from, and can we poison them on the qemu side?
grep " uint;" on my system includes. I know that there are more
creative ways to define it.
/usr/include/ffi-x86_64.h\0278: ffi_arg uint;
/usr/include/sys/types.h\0150:typedef unsigned int uint;
#ifdef __USE_MISC
/* Old compatibility names for C types. */
typedef unsigned long int ulong;
typedef unsigned short int ushort;
typedef unsigned int uint;
#endif
I guess we get those someway.
/usr/include/nspr4/obsolete/protypes.h\052:typedef PRUintn uint;
/usr/include/mysql/server/my_global.h\0465:typedef unsigned int uint;
/usr/include/boost/iostreams/filter/zlib.hpp\047:typedef uint32_t uint;
/usr/include/qt5/QtCore/qglobal.h\0275:typedef unsigned int uint;
in qt it is defined for everything.
If I disable the ones in sys/types.h
I got:
cc -m64 -mcx16 -Ilibqemu-loongarch64-linux-user.fa.p -I.
-I../../../../mnt/code/qemu/full -Itarget/loongarch
-I../../../../mnt/code/qemu/full/target/loongarch
-I../../../../mnt/code/qemu/full/common-user/host/x86_64
-I../../../../mnt/code/qemu/full/linux-user/include/host/x86_64
-I../../../../mnt/code/qemu/full/linux-user/include -Ilinux-user
-I../../../../mnt/code/qemu/full/linux-user
-I../../../../mnt/code/qemu/full/linux-user/loongarch64 -Iqapi -Itrace -Iui
-Iui/shader -I/usr/include/capstone -I/usr/include/glib-2.0
-I/usr/lib64/glib-2.0/include -I/usr/include/sysprof-4 -fdiagnostics-color=auto
-Wall -Winvalid-pch -Werror -std=gnu11 -O2 -g -isystem
/mnt/code/qemu/full/linux-headers -isystem linux-headers -iquote . -iquote
/mnt/code/qemu/full -iquote /mnt/code/qemu/full/include -iquote
/mnt/code/qemu/full/tcg/i386 -pthread -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2
-D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -fno-strict-aliasing
-fno-common -fwrapv -Wundef -Wwrite-strings -Wmissing-prototypes
-Wstrict-prototypes -Wredundant-decls -Wold-style-declaration
-Wold-style-definition -Wtype-limits -Wformat-security -Wformat-y2k -Winit-self
-Wignored-qualifiers -Wempty-body -Wnested-externs -Wendif-labels
-Wexpansion-to-defined -Wimplicit-fallthrough=2 -Wmissing-format-attribute
-Wno-missing-include-dirs -Wno-shift-negative-value -Wno-psabi
-fstack-protector-strong -fPIE
-isystem../../../../mnt/code/qemu/full/linux-headers -isystemlinux-headers
-DNEED_CPU_H '-DCONFIG_TARGET="loongarch64-linux-user-config-target.h"'
'-DCONFIG_DEVICES="loongarch64-linux-user-config-devices.h"' -MD -MQ
libqemu-loongarch64-linux-user.fa.p/linux-user_syscall.c.o -MF
libqemu-loongarch64-linux-user.fa.p/linux-user_syscall.c.o.d -o
libqemu-loongarch64-linux-user.fa.p/linux-user_syscall.c.o -c
../../../../mnt/code/qemu/full/linux-user/syscall.c
../../../../mnt/code/qemu/full/linux-user/syscall.c:317:32: error: unknown type
name ‘uint’; did you mean ‘guint’?
317 | _syscall3(int, sys_getdents64, uint, fd, struct linux_dirent64 *, dirp,
uint, count);
| ^~~~
There are some other friends that fail in linux-user/syscall.c
I will post an RFC with my findings.
Later, Juan.
- [PULL 04/10] block/meson.build: prefer positive condition for replication, (continued)
- [PULL 04/10] block/meson.build: prefer positive condition for replication, Juan Quintela, 2023/05/09
- [PULL 05/10] colo: make colo_checkpoint_notify static and provide simpler API, Juan Quintela, 2023/05/09
- [PULL 06/10] build: move COLO under CONFIG_REPLICATION, Juan Quintela, 2023/05/09
- [PULL 07/10] migration: drop colo_incoming_thread from MigrationIncomingState, Juan Quintela, 2023/05/09
- [PULL 09/10] migration: disallow change capabilities in COLO state, Juan Quintela, 2023/05/09
- [PULL 08/10] migration: process_incoming_migration_co: simplify code flow around ret, Juan Quintela, 2023/05/09
- [PULL 10/10] migration: block incoming colo when capability is disabled, Juan Quintela, 2023/05/09
- Re: [PULL 00/10] Migration 20230509 patches, Richard Henderson, 2023/05/10
[PULL 00/10] Migration 20230509 patches, Juan Quintela, 2023/05/10
- [PULL 02/10] ram: Let colo_flush_ram_cache take the bitmap_mutex, Juan Quintela, 2023/05/10
- [PULL 01/10] ram: Add public helper to set colo bitmap, Juan Quintela, 2023/05/10
- [PULL 03/10] multifd: Add the ramblock to MultiFDRecvParams, Juan Quintela, 2023/05/10
- [PULL 05/10] colo: make colo_checkpoint_notify static and provide simpler API, Juan Quintela, 2023/05/10
- [PULL 04/10] block/meson.build: prefer positive condition for replication, Juan Quintela, 2023/05/10
- [PULL 07/10] migration: drop colo_incoming_thread from MigrationIncomingState, Juan Quintela, 2023/05/10
- [PULL 08/10] migration: process_incoming_migration_co: simplify code flow around ret, Juan Quintela, 2023/05/10
- [PULL 06/10] build: move COLO under CONFIG_REPLICATION, Juan Quintela, 2023/05/10