> > +int migrate_compress_threads(void) > > +{ > > + MigrationState *s; > > + > > + s = migrate_get_current(); > > + > > + return s->compress_thread_count; > > +} > > + > > int migrate_use_xbzrle(void) > > { > > MigrationState *s; > > @@ -697,4 +795,5 @@ void migrate_fd_connect(MigrationState *s) > > > > qemu_thread_create(&s->thread, "migration", migration_thread, s, > > QEMU_THREAD_JOINABLE); > > + migrate_compress_threads_create(s);
> don't create compress_threads always. > It may be better: > if (!migrate_use_xbzrle()) { > migrate_compress_threads_create(s); > } Thanks for your comments, in fact, the multiple thread compression can co-work with xbrzle, which can help to accelerate live migration. > BTW, this patch is too big to review. Spliting it into some patch will be > welcome. I am doing it.