On 15/03/2021 22.05, Philippe Mathieu-Daudé wrote:
Hi Thomas,
+Alex
On 3/15/21 8:07 PM, Thomas Huth wrote:
The CONFIG_VFIO switch only works in target specific code. Since
migration/migration.c is common code, the #ifdef does not have
the intended behavior here. Move the related code to a separate
file now which gets compiled via specific_ss instead.
Fixes: 3710586caa ("qapi: Add VFIO devices migration stats in Migration stats")
Signed-off-by: Thomas Huth <th...@redhat.com>
---
migration/meson.build | 3 ++-
migration/migration.c | 15 ---------------
migration/migration.h | 2 ++
migration/special.c | 25 +++++++++++++++++++++++++
4 files changed, 29 insertions(+), 16 deletions(-)
create mode 100644 migration/special.c
diff --git a/migration/meson.build b/migration/meson.build
index 9645f44005..e1f72f6ba0 100644
--- a/migration/meson.build
+++ b/migration/meson.build
@@ -30,4 +30,5 @@ softmmu_ss.add(when: ['CONFIG_RDMA', rdma], if_true:
files('rdma.c'))
softmmu_ss.add(when: 'CONFIG_LIVE_BLOCK_MIGRATION', if_true: files('block.c'))
softmmu_ss.add(when: zstd, if_true: files('multifd-zstd.c'))
-specific_ss.add(when: 'CONFIG_SOFTMMU', if_true: files('dirtyrate.c', 'ram.c'))
+specific_ss.add(when: 'CONFIG_SOFTMMU',
+ if_true: files('dirtyrate.c', 'ram.c', 'special.c'))
Why not simply name this migration/vfio.c? That way we do not start
mixed bag of everything target specific.
I don't mind ... well, if we have other small functions there in the future
that depend on CONFIG switches, a mixed bag file might not be such a bad
idea instead of having lots and lots of small other files ... OTOH, if there
is more vfio migration code in the works that might fit here, a name like
vfio.c would be better, of course. What do the maintainers think?
Thomas