On Tue, Sep 25, 2018 at 05:14:40PM +0800, Fei Li wrote: > Add judgement in compress_threads_save_cleanup() to check whether the > static CompressParam *comp_param has been allocated. If not, just > return; or else segmentation fault will occur when using the NULL > comp_param's parameters. One test case can reproduce this is: set > the compression on and migrate to a wrong nonexistent host IP address. > > Our current code does not judge before handling comp_param[idx]'s quit > and cond that whether they have been initialized. If not initialized, > "qemu_mutex_lock_impl: Assertion `mutex->initialized' failed." will > occur. Fix this by squashing the terminate_compression_threads() into > compress_threads_save_cleanup() and employing the existing judgement > condition. One test case can reproduce this error is: set the > compression on and fail to fully setup the default eight compression > thread in compress_threads_save_setup(). > > Signed-off-by: Fei Li <f...@suse.com>
Reviewed-by: Peter Xu <pet...@redhat.com> Regards, -- Peter Xu