That typedefs are needed on both files. New compilers (F25 where I
work) don't complain about repeating a typedef. But older ones
complain.
Signed-off-by: Juan Quintela <quintela@redhat.com>
---
include/migration/register.h | 3 ---
include/migration/vmstate.h | 1 -
include/qemu/typedefs.h | 2 ++
3 files changed, 2 insertions(+), 4 deletions(-)
diff --git a/include/migration/register.h b/include/migration/register.h
index 717c617..d9498d9 100644
--- a/include/migration/register.h
+++ b/include/migration/register.h
@@ -14,9 +14,6 @@
#ifndef MIGRATION_REGISTER_H
#define MIGRATION_REGISTER_H
-typedef void SaveStateHandler(QEMUFile *f, void *opaque);
-typedef int LoadStateHandler(QEMUFile *f, void *opaque, int version_id);
-
typedef struct SaveVMHandlers {
/* This runs inside the iothread lock. */
SaveStateHandler *save_state;
diff --git a/include/migration/vmstate.h b/include/migration/vmstate.h
index f3f3c2a..e85fbd8 100644
--- a/include/migration/vmstate.h
+++ b/include/migration/vmstate.h
@@ -29,7 +29,6 @@
#include "migration/qjson.h"
-typedef int LoadStateHandler(QEMUFile *f, void *opaque, int version_id);
typedef struct VMStateInfo VMStateInfo;
typedef struct VMStateDescription VMStateDescription;
typedef struct VMStateField VMStateField;
diff --git a/include/qemu/typedefs.h b/include/qemu/typedefs.h
index 51958bf..f745d5f 100644
--- a/include/qemu/typedefs.h
+++ b/include/qemu/typedefs.h
@@ -96,5 +96,7 @@ typedef struct uWireSlave uWireSlave;
typedef struct VirtIODevice VirtIODevice;
typedef struct Visitor Visitor;
typedef struct node_info NodeInfo;
+typedef void SaveStateHandler(QEMUFile *f, void *opaque);
+typedef int LoadStateHandler(QEMUFile *f, void *opaque, int version_id);
#endif /* QEMU_TYPEDEFS_H */
--
2.9.4
On Wed, 14 Jun 2017 10:34:34 +0200
Juan Quintela <quintela@redhat.com> wrote:
> That typedefs are needed on both files. New compilers (F25 where I
Only LoadStateHandler is actually needed by both files but I guess
it is ok to keep these typedefs together.
Reviewed-by: Greg Kurz <groug@kaod.org>
> work) don't complain about repeating a typedef. But older ones
> complain.
>
> Signed-off-by: Juan Quintela <quintela@redhat.com>
> ---
> include/migration/register.h | 3 ---
> include/migration/vmstate.h | 1 -
> include/qemu/typedefs.h | 2 ++
> 3 files changed, 2 insertions(+), 4 deletions(-)
>
> diff --git a/include/migration/register.h b/include/migration/register.h
> index 717c617..d9498d9 100644
> --- a/include/migration/register.h
> +++ b/include/migration/register.h
> @@ -14,9 +14,6 @@
> #ifndef MIGRATION_REGISTER_H
> #define MIGRATION_REGISTER_H
>
> -typedef void SaveStateHandler(QEMUFile *f, void *opaque);
> -typedef int LoadStateHandler(QEMUFile *f, void *opaque, int version_id);
> -
> typedef struct SaveVMHandlers {
> /* This runs inside the iothread lock. */
> SaveStateHandler *save_state;
> diff --git a/include/migration/vmstate.h b/include/migration/vmstate.h
> index f3f3c2a..e85fbd8 100644
> --- a/include/migration/vmstate.h
> +++ b/include/migration/vmstate.h
> @@ -29,7 +29,6 @@
>
> #include "migration/qjson.h"
>
> -typedef int LoadStateHandler(QEMUFile *f, void *opaque, int version_id);
> typedef struct VMStateInfo VMStateInfo;
> typedef struct VMStateDescription VMStateDescription;
> typedef struct VMStateField VMStateField;
> diff --git a/include/qemu/typedefs.h b/include/qemu/typedefs.h
> index 51958bf..f745d5f 100644
> --- a/include/qemu/typedefs.h
> +++ b/include/qemu/typedefs.h
> @@ -96,5 +96,7 @@ typedef struct uWireSlave uWireSlave;
> typedef struct VirtIODevice VirtIODevice;
> typedef struct Visitor Visitor;
> typedef struct node_info NodeInfo;
> +typedef void SaveStateHandler(QEMUFile *f, void *opaque);
> +typedef int LoadStateHandler(QEMUFile *f, void *opaque, int version_id);
>
> #endif /* QEMU_TYPEDEFS_H */
Greg Kurz <groug@kaod.org> wrote:
> On Wed, 14 Jun 2017 10:34:34 +0200
> Juan Quintela <quintela@redhat.com> wrote:
>
>> That typedefs are needed on both files. New compilers (F25 where I
>
> Only LoadStateHandler is actually needed by both files but I guess
> it is ok to keep these typedefs together.
Yeap. Sorry for the confusing message. I wanted to have them
together. As you said, only the Load one is needed.
In due curse, register.h file should be removed, but that is not going
to happen soon.
>
> Reviewed-by: Greg Kurz <groug@kaod.org>
>
>> work) don't complain about repeating a typedef. But older ones
>> complain.
>>
>> Signed-off-by: Juan Quintela <quintela@redhat.com>
>> ---
>> include/migration/register.h | 3 ---
>> include/migration/vmstate.h | 1 -
>> include/qemu/typedefs.h | 2 ++
>> 3 files changed, 2 insertions(+), 4 deletions(-)
>>
>> diff --git a/include/migration/register.h b/include/migration/register.h
>> index 717c617..d9498d9 100644
>> --- a/include/migration/register.h
>> +++ b/include/migration/register.h
>> @@ -14,9 +14,6 @@
>> #ifndef MIGRATION_REGISTER_H
>> #define MIGRATION_REGISTER_H
>>
>> -typedef void SaveStateHandler(QEMUFile *f, void *opaque);
>> -typedef int LoadStateHandler(QEMUFile *f, void *opaque, int version_id);
>> -
>> typedef struct SaveVMHandlers {
>> /* This runs inside the iothread lock. */
>> SaveStateHandler *save_state;
>> diff --git a/include/migration/vmstate.h b/include/migration/vmstate.h
>> index f3f3c2a..e85fbd8 100644
>> --- a/include/migration/vmstate.h
>> +++ b/include/migration/vmstate.h
>> @@ -29,7 +29,6 @@
>>
>> #include "migration/qjson.h"
>>
>> -typedef int LoadStateHandler(QEMUFile *f, void *opaque, int version_id);
>> typedef struct VMStateInfo VMStateInfo;
>> typedef struct VMStateDescription VMStateDescription;
>> typedef struct VMStateField VMStateField;
>> diff --git a/include/qemu/typedefs.h b/include/qemu/typedefs.h
>> index 51958bf..f745d5f 100644
>> --- a/include/qemu/typedefs.h
>> +++ b/include/qemu/typedefs.h
>> @@ -96,5 +96,7 @@ typedef struct uWireSlave uWireSlave;
>> typedef struct VirtIODevice VirtIODevice;
>> typedef struct Visitor Visitor;
>> typedef struct node_info NodeInfo;
>> +typedef void SaveStateHandler(QEMUFile *f, void *opaque);
>> +typedef int LoadStateHandler(QEMUFile *f, void *opaque, int version_id);
>>
>> #endif /* QEMU_TYPEDEFS_H */
© 2016 - 2025 Red Hat, Inc.