On Wed, Oct 05, 2022 at 07:51:34PM +0100, Dr. David Alan Gilbert wrote:
> > /* struct contains XBZRLE cache and a static page
> > used by the compression */
> > static struct {
> > @@ -319,6 +359,11 @@ typedef struct {
> > struct RAMState {
> > /* QEMUFile used for this migration */
> > QEMUFile *f;
> > + /*
> > + * PageSearchStatus structures for the channels when send pages.
> > + * Protected by the bitmap_mutex.
> > + */
> > + PageSearchStatus pss[RAM_CHANNEL_MAX];
>
> Why statically size this rather than allocate it in ram_state_init ?
I don't strongly feel like it needs the complexity? As there're only at
most 2 channels anyway, so the best chance is we save ~56 bytes on src qemu
but only during migration (RAMState allocated only in ram setup).
If you think we should still do the dynamic allcation, definitely doable on
my side too.
--
Peter Xu