On 1/19/21 2:50 PM, Peter Maydell wrote: > On Sun, 17 Jan 2021 at 19:24, Philippe Mathieu-Daudé <f4...@amsat.org> wrote: >> >> 'vmstate_dummy' is special and only used for user-mode. Rename >> it to something more specific. >> It was introduced restricted to user-mode in commit c71c3e99b8 >> ("Add a vmstate_dummy struct for CONFIG_USER_ONLY") but this >> restriction was later removed in commit 6afc14e92ac ("migration: >> Fix warning caused by missing declaration of vmstate_dummy"). >> Avoid the missing declaration warning by adding a stub for the >> symbol, and restore the #ifdef'ry. > > So what is the actual use of vmstate_dummy ? I had a grep > through and as far as I can see the points where vmstate_cpu_common > is used are all in softmmu-only code.
No clue, maybe simply remnant from unfinished work? > I tried this patch > and QEMU seems to compile OK: > > diff --git a/include/hw/core/cpu.h b/include/hw/core/cpu.h > index 140fa32a5e3..a827417a4d8 100644 > --- a/include/hw/core/cpu.h > +++ b/include/hw/core/cpu.h > @@ -1131,8 +1131,6 @@ bool target_words_bigendian(void); > > #ifdef CONFIG_SOFTMMU > extern const VMStateDescription vmstate_cpu_common; > -#else > -#define vmstate_cpu_common vmstate_dummy > #endif > > #define VMSTATE_CPU() { \ Great! Maybe even restricting VMSTATE_CPU() to softmmu-only: -- >8 -- @@ -1131,9 +1131,6 @@ bool target_words_bigendian(void); #ifdef CONFIG_SOFTMMU extern const VMStateDescription vmstate_cpu_common; -#else -#define vmstate_cpu_common vmstate_dummy -#endif #define VMSTATE_CPU() { \ .name = "parent_obj", \ @@ -1142,6 +1139,7 @@ extern const VMStateDescription vmstate_cpu_common; .flags = VMS_STRUCT, \ .offset = 0, \ } +#endif #endif /* NEED_CPU_H */ --- I'll wait if David/Juan have any comment, else respin based on your patch. Thanks, Phil.