[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-commits] [qemu/qemu] c286c4: ram: Add public helper to set colo bi
From: |
Richard Henderson |
Subject: |
[Qemu-commits] [qemu/qemu] c286c4: ram: Add public helper to set colo bitmap |
Date: |
Wed, 10 May 2023 02:33:15 -0700 |
Branch: refs/heads/staging
Home: https://github.com/qemu/qemu
Commit: c286c4d784db846b6a8ad877766ebd6a701bfdda
https://github.com/qemu/qemu/commit/c286c4d784db846b6a8ad877766ebd6a701bfdda
Author: Lukas Straub <lukasstraub2@web.de>
Date: 2023-05-09 (Tue, 09 May 2023)
Changed paths:
M migration/ram.c
M migration/ram.h
Log Message:
-----------
ram: Add public helper to set colo bitmap
The overhead of the mutex in non-multifd mode is negligible,
because in that case its just the single thread taking the mutex.
This will be used in the next commits to add colo support to multifd.
Signed-off-by: Lukas Straub <lukasstraub2@web.de>
Reviewed-by: Juan Quintela <quintela@redhat.com>
Message-Id:
<22d83cb428f37929563155531bfb69fd8953cc61.1683572883.git.lukasstraub2@web.de>
Signed-off-by: Juan Quintela <quintela@redhat.com>
Commit: 2012f2d14303e5b070552c1c01d0ec8d8c8a7ef2
https://github.com/qemu/qemu/commit/2012f2d14303e5b070552c1c01d0ec8d8c8a7ef2
Author: Lukas Straub <lukasstraub2@web.de>
Date: 2023-05-09 (Tue, 09 May 2023)
Changed paths:
M migration/ram.c
Log Message:
-----------
ram: Let colo_flush_ram_cache take the bitmap_mutex
This is not required, colo_flush_ram_cache does not run concurrently
with the multifd threads since the cache is only flushed after
everything has been received. But it makes me more comfortable.
This will be used in the next commits to add colo support to multifd.
Signed-off-by: Lukas Straub <lukasstraub2@web.de>
Reviewed-by: Juan Quintela <quintela@redhat.com>
Message-Id:
<35cb23ba854151d38a31e3a5c8a1020e4283cb4a.1683572883.git.lukasstraub2@web.de>
Signed-off-by: Juan Quintela <quintela@redhat.com>
Commit: aa1b3b676a977aea3ddda2345340f6112dc789ff
https://github.com/qemu/qemu/commit/aa1b3b676a977aea3ddda2345340f6112dc789ff
Author: Lukas Straub <lukasstraub2@web.de>
Date: 2023-05-09 (Tue, 09 May 2023)
Changed paths:
M migration/multifd.c
M migration/multifd.h
Log Message:
-----------
multifd: Add the ramblock to MultiFDRecvParams
This will be used in the next commits to add colo support to multifd.
Signed-off-by: Lukas Straub <lukasstraub2@web.de>
Reviewed-by: Juan Quintela <quintela@redhat.com>
Message-Id:
<88135197411df1a71d7832962b39abf60faf0021.1683572883.git.lukasstraub2@web.de>
Signed-off-by: Juan Quintela <quintela@redhat.com>
Commit: 54a60726c0338408ae73001b58feb7dc5fab52c3
https://github.com/qemu/qemu/commit/54a60726c0338408ae73001b58feb7dc5fab52c3
Author: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Date: 2023-05-09 (Tue, 09 May 2023)
Changed paths:
M block/meson.build
Log Message:
-----------
block/meson.build: prefer positive condition for replication
Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Reviewed-by: Juan Quintela <quintela@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Lukas Straub <lukasstraub2@web.de>
Reviewed-by: Zhang Chen <chen.zhang@intel.com>
Message-Id: <20230428194928.1426370-2-vsementsov@yandex-team.ru>
Signed-off-by: Juan Quintela <quintela@redhat.com>
Commit: 89a93a7e5b734aa9b55da8f599920c001baa970e
https://github.com/qemu/qemu/commit/89a93a7e5b734aa9b55da8f599920c001baa970e
Author: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Date: 2023-05-09 (Tue, 09 May 2023)
Changed paths:
M include/migration/colo.h
M migration/colo.c
M migration/options.c
Log Message:
-----------
colo: make colo_checkpoint_notify static and provide simpler API
colo_checkpoint_notify() is mostly used in colo.c. Outside we use it
once when x-checkpoint-delay migration parameter is set. So, let's
simplify the external API to only that function - notify COLO that
parameter was set. This make external API more robust and hides
implementation details from external callers. Also this helps us to
make COLO module optional in further patch (i.e. we are going to add
possibility not build the COLO module).
Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Reviewed-by: Juan Quintela <quintela@redhat.com>
Reviewed-by: Peter Xu <peterx@redhat.com>
Reviewed-by: Zhang Chen <chen.zhang@intel.com>
Message-Id: <20230428194928.1426370-3-vsementsov@yandex-team.ru>
Signed-off-by: Juan Quintela <quintela@redhat.com>
Commit: a7a28868565c1fad6a46845fd766edeb64e7de64
https://github.com/qemu/qemu/commit/a7a28868565c1fad6a46845fd766edeb64e7de64
Author: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Date: 2023-05-09 (Tue, 09 May 2023)
Changed paths:
M hmp-commands.hx
M migration/colo.c
M migration/meson.build
M migration/migration-hmp-cmds.c
M migration/migration.c
M qapi/migration.json
A stubs/colo.c
M stubs/meson.build
Log Message:
-----------
build: move COLO under CONFIG_REPLICATION
We don't allow to use x-colo capability when replication is not
configured. So, no reason to build COLO when replication is disabled,
it's unusable in this case.
Note also that the check in migrate_caps_check() is not the only
restriction: some functions in migration/colo.c will just abort if
called with not defined CONFIG_REPLICATION, for example:
migration_iteration_finish()
case MIGRATION_STATUS_COLO:
migrate_start_colo_process()
colo_process_checkpoint()
abort()
It could probably make sense to have possibility to enable COLO without
REPLICATION, but this requires deeper audit of colo & replication code,
which may be done later if needed.
Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Acked-by: Dr. David Alan Gilbert <dave@treblig.org>
Reviewed-by: Juan Quintela <quintela@redhat.com>
Message-Id: <20230428194928.1426370-4-vsementsov@yandex-team.ru>
Signed-off-by: Juan Quintela <quintela@redhat.com>
Commit: 42884e4327758962f75d29a0075a7d41549ffc65
https://github.com/qemu/qemu/commit/42884e4327758962f75d29a0075a7d41549ffc65
Author: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Date: 2023-05-09 (Tue, 09 May 2023)
Changed paths:
M migration/migration.c
M migration/migration.h
Log Message:
-----------
migration: drop colo_incoming_thread from MigrationIncomingState
have_colo_incoming_thread variable is unused. colo_incoming_thread can
be local.
Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Reviewed-by: Juan Quintela <quintela@redhat.com>
Reviewed-by: Peter Xu <peterx@redhat.com>
Reviewed-by: Zhang Chen <chen.zhang@intel.com>
Message-Id: <20230428194928.1426370-6-vsementsov@yandex-team.ru>
Signed-off-by: Juan Quintela <quintela@redhat.com>
Commit: cded6246c6ef2f34565e23a81a431ff69ed7e3f6
https://github.com/qemu/qemu/commit/cded6246c6ef2f34565e23a81a431ff69ed7e3f6
Author: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Date: 2023-05-09 (Tue, 09 May 2023)
Changed paths:
M migration/migration.c
Log Message:
-----------
migration: process_incoming_migration_co: simplify code flow around ret
Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Reviewed-by: Juan Quintela <quintela@redhat.com>
Reviewed-by: Peter Xu <peterx@redhat.com>
Reviewed-by: Zhang Chen <chen.zhang@intel.com>
Message-Id: <20230428194928.1426370-7-vsementsov@yandex-team.ru>
Signed-off-by: Juan Quintela <quintela@redhat.com>
Commit: c08d6114f29d21c8010b7021a8a1b8ae5b1a6f33
https://github.com/qemu/qemu/commit/c08d6114f29d21c8010b7021a8a1b8ae5b1a6f33
Author: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Date: 2023-05-09 (Tue, 09 May 2023)
Changed paths:
M migration/migration.c
M migration/options.c
Log Message:
-----------
migration: disallow change capabilities in COLO state
COLO is not listed as running state in migrate_is_running(), so, it's
theoretically possible to disable colo capability in COLO state and the
unexpected error in migration_iteration_finish() is reachable.
Let's disallow that in qmp_migrate_set_capabilities. Than the error
becomes absolutely unreachable: we can get into COLO state only with
enabled capability and can't disable it while we are in COLO state. So
substitute the error by simple assertion.
Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Reviewed-by: Juan Quintela <quintela@redhat.com>
Reviewed-by: Peter Xu <peterx@redhat.com>
Message-Id: <20230428194928.1426370-10-vsementsov@yandex-team.ru>
Signed-off-by: Juan Quintela <quintela@redhat.com>
Commit: 5f43d297bc2b9530805ad8602c6e2ea284b08628
https://github.com/qemu/qemu/commit/5f43d297bc2b9530805ad8602c6e2ea284b08628
Author: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Date: 2023-05-09 (Tue, 09 May 2023)
Changed paths:
M docs/COLO-FT.txt
M migration/migration.c
Log Message:
-----------
migration: block incoming colo when capability is disabled
We generally require same set of capabilities on source and target.
Let's require x-colo capability to use COLO on target.
Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Reviewed-by: Juan Quintela <quintela@redhat.com>
Reviewed-by: Peter Xu <peterx@redhat.com>
Reviewed-by: Lukas Straub <lukasstraub2@web.de>
Reviewed-by: Zhang Chen <chen.zhang@intel.com>
Message-Id: <20230428194928.1426370-11-vsementsov@yandex-team.ru>
Signed-off-by: Juan Quintela <quintela@redhat.com>
Commit: 7534695b405e8abb4eb61d082da1d7610f6585bf
https://github.com/qemu/qemu/commit/7534695b405e8abb4eb61d082da1d7610f6585bf
Author: Richard Henderson <richard.henderson@linaro.org>
Date: 2023-05-10 (Wed, 10 May 2023)
Changed paths:
M target/loongarch/machine.c
Log Message:
-----------
target/loongarch: Terminate vmstate subsections list
This list requires a NULL terminator.
Fixes: 16f5396cec23 ("target/loongarch: Add LSX data type VReg")
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20230510062405.127260-1-richard.henderson@linaro.org>
Commit: aab6a1b9732236ae1d02090a342804c05f521d1a
https://github.com/qemu/qemu/commit/aab6a1b9732236ae1d02090a342804c05f521d1a
Author: Richard Henderson <richard.henderson@linaro.org>
Date: 2023-05-10 (Wed, 10 May 2023)
Changed paths:
M block/meson.build
M docs/COLO-FT.txt
M hmp-commands.hx
M include/migration/colo.h
M migration/colo.c
M migration/meson.build
M migration/migration-hmp-cmds.c
M migration/migration.c
M migration/migration.h
M migration/multifd.c
M migration/multifd.h
M migration/options.c
M migration/ram.c
M migration/ram.h
M qapi/migration.json
A stubs/colo.c
M stubs/meson.build
Log Message:
-----------
Merge tag 'migration-20230509-pull-request' of
https://gitlab.com/juan.quintela/qemu into staging
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.
# -----BEGIN PGP SIGNATURE-----
#
# iQIzBAABCAAdFiEEGJn/jt6/WMzuA0uC9IfvGFhy1yMFAmRanDwACgkQ9IfvGFhy
# 1yOe6w/+MLg6l5WOYV/VemfKg6SZ8J1LPT4fLqYP4Er6qVU14lt/UAvWNg2wo/ym
# if0QjXwXsyGOy6Gh0jIE7ggiE5FOErLt/KBdoh6Fg98L7RvsFXiNOFuKwSbz3j/K
# qllxnrnYWNHPhgPf/UDm7p8cPW72HdgM9+yDFiH4v3zwKF/uW6Y4uwIlfD/hl7+T
# lC7vSoafPAdWpVrDDuJ2Y9iX5P0EPJhpfW5Ulq82Zo4YcehmUEfP0G18ixlJxAZN
# T0AnumZuULJK/BcfSVh41C600Ymr8krUnvylHY0oMIP2716F9pC5U8OI285gsTbu
# eYIVwhbcHqmfkGf60qvH8ea7KGnfAnXy6eM7x/YeR6V1/t1PUkYmQ3+1ZqwlXIag
# byz9wTi/HC+1/ptSqTTjN6z1YZOtdgZHnberfohACG0CDsrdyeNUkXlPWjNuhqHV
# PYkI11FVhiFQANbfCN0UKamZe28m13rDWfGF0Kr0j776UkRqFf9HKI3eMYfP2s8u
# gy3sscMz+Hxl0y3kWHjD3Cqr8JDKg92gJxrH8gB+yAKd9lMlvh59y16LOV71Xmw3
# 1JXEy+XMZSEtrhDLjgcdnDdzRKsT5DASJhakCpcqVDuoHW4gyFisLxPGUvWZLFQw
# 4MTh9W7FkmH1E2z8jNVozS5x82m/6Y3oUTB7lRItRnJwicFJbRw=
# =soGf
# -----END PGP SIGNATURE-----
# gpg: Signature made Tue 09 May 2023 08:17:16 PM BST
# gpg: using RSA key 1899FF8EDEBF58CCEE034B82F487EF185872D723
# gpg: Good signature from "Juan Quintela <quintela@redhat.com>" [undefined]
# gpg: aka "Juan Quintela <quintela@trasno.org>" [undefined]
# gpg: WARNING: This key is not certified with a trusted signature!
# gpg: There is no indication that the signature belongs to the owner.
# Primary key fingerprint: 1899 FF8E DEBF 58CC EE03 4B82 F487 EF18 5872 D723
* tag 'migration-20230509-pull-request' of
https://gitlab.com/juan.quintela/qemu:
migration: block incoming colo when capability is disabled
migration: disallow change capabilities in COLO state
migration: process_incoming_migration_co: simplify code flow around ret
migration: drop colo_incoming_thread from MigrationIncomingState
build: move COLO under CONFIG_REPLICATION
colo: make colo_checkpoint_notify static and provide simpler API
block/meson.build: prefer positive condition for replication
multifd: Add the ramblock to MultiFDRecvParams
ram: Let colo_flush_ram_cache take the bitmap_mutex
ram: Add public helper to set colo bitmap
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Compare: https://github.com/qemu/qemu/compare/577e648bdb52...aab6a1b97322
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Qemu-commits] [qemu/qemu] c286c4: ram: Add public helper to set colo bitmap,
Richard Henderson <=