* Re: [Qemu-devel] [PATCH] migration/ram.c: Fix codes conflict about bitmap_mutex [not found] <20190329222951.28945-1-chen.zhang@intel.com> @ 2019-04-01 9:11 ` Wei Wang 2019-04-04 8:17 ` Zhang, Chen 2019-04-05 14:30 ` Dr. David Alan Gilbert 1 sibling, 1 reply; 5+ messages in thread From: Wei Wang @ 2019-04-01 9:11 UTC (permalink / raw) To: Zhang Chen, Zhang Chen, Dr. David Alan Gilbert, Juan Quintela, qemu-dev On 03/30/2019 06:29 AM, Zhang Chen wrote: > From: Zhang Chen <chen.zhang@intel.com> > > I found upstream codes conflict with COLO and lead to crash, > and I located to this patch: > > commit 386a907b37a9321bc5d699bc37104d6ffba1b34d > Author: Wei Wang <wei.w.wang@intel.com> > Date: Tue Dec 11 16:24:49 2018 +0800 > > migration: use bitmap_mutex in migration_bitmap_clear_dirty > > My colleague Wei's patch add bitmap_mutex in migration_bitmap_clear_dirty, > but COLO didn't initialize the bitmap_mutex. So we always get an error > when COLO start up. like that: > qemu-system-x86_64: util/qemu-thread-posix.c:64: qemu_mutex_lock_impl: Assertion `mutex->initialized' failed. > > This patch add the bitmap_mutex initialize and destroy in COLO > lifecycle. > > Signed-off-by: Zhang Chen <chen.zhang@intel.com> > --- > migration/ram.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/migration/ram.c b/migration/ram.c > index d7f8fe45a8..f68beeeeff 100644 > --- a/migration/ram.c > +++ b/migration/ram.c > @@ -3918,6 +3918,7 @@ int colo_init_ram_cache(void) > } > ram_state = g_new0(RAMState, 1); > ram_state->migration_dirty_pages = 0; > + qemu_mutex_init(&ram_state->bitmap_mutex); > memory_global_dirty_log_start(); > > return 0; > @@ -3956,6 +3957,7 @@ void colo_release_ram_cache(void) > } > > rcu_read_unlock(); > + qemu_mutex_destroy(&ram_state->bitmap_mutex); > g_free(ram_state); > ram_state = NULL; > } Reviewed-by: Wei Wang <wei.w.wang@intel.com> Best, Wei ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Qemu-devel] [PATCH] migration/ram.c: Fix codes conflict about bitmap_mutex 2019-04-01 9:11 ` [Qemu-devel] [PATCH] migration/ram.c: Fix codes conflict about bitmap_mutex Wei Wang @ 2019-04-04 8:17 ` Zhang, Chen 2019-04-04 8:55 ` Dr. David Alan Gilbert 0 siblings, 1 reply; 5+ messages in thread From: Zhang, Chen @ 2019-04-04 8:17 UTC (permalink / raw) To: Wang, Wei W, Zhang Chen, Dr. David Alan Gilbert, Juan Quintela, qemu-dev Ping~ Anyone have comments about this patch? Thanks Zhang Chen > -----Original Message----- > From: Wang, Wei W > Sent: Monday, April 1, 2019 5:12 PM > To: Zhang, Chen <chen.zhang@intel.com>; Zhang Chen > <zhangckid@gmail.com>; Dr. David Alan Gilbert <dgilbert@redhat.com>; Juan > Quintela <quintela@redhat.com>; qemu-dev <qemu-devel@nongnu.org> > Subject: Re: [PATCH] migration/ram.c: Fix codes conflict about bitmap_mutex > > On 03/30/2019 06:29 AM, Zhang Chen wrote: > > From: Zhang Chen <chen.zhang@intel.com> > > > > I found upstream codes conflict with COLO and lead to crash, and I > > located to this patch: > > > > commit 386a907b37a9321bc5d699bc37104d6ffba1b34d > > Author: Wei Wang <wei.w.wang@intel.com> > > Date: Tue Dec 11 16:24:49 2018 +0800 > > > > migration: use bitmap_mutex in migration_bitmap_clear_dirty > > > > My colleague Wei's patch add bitmap_mutex in > > migration_bitmap_clear_dirty, but COLO didn't initialize the > > bitmap_mutex. So we always get an error when COLO start up. like that: > > qemu-system-x86_64: util/qemu-thread-posix.c:64: qemu_mutex_lock_impl: > Assertion `mutex->initialized' failed. > > > > This patch add the bitmap_mutex initialize and destroy in COLO > > lifecycle. > > > > Signed-off-by: Zhang Chen <chen.zhang@intel.com> > > --- > > migration/ram.c | 2 ++ > > 1 file changed, 2 insertions(+) > > > > diff --git a/migration/ram.c b/migration/ram.c index > > d7f8fe45a8..f68beeeeff 100644 > > --- a/migration/ram.c > > +++ b/migration/ram.c > > @@ -3918,6 +3918,7 @@ int colo_init_ram_cache(void) > > } > > ram_state = g_new0(RAMState, 1); > > ram_state->migration_dirty_pages = 0; > > + qemu_mutex_init(&ram_state->bitmap_mutex); > > memory_global_dirty_log_start(); > > > > return 0; > > @@ -3956,6 +3957,7 @@ void colo_release_ram_cache(void) > > } > > > > rcu_read_unlock(); > > + qemu_mutex_destroy(&ram_state->bitmap_mutex); > > g_free(ram_state); > > ram_state = NULL; > > } > > Reviewed-by: Wei Wang <wei.w.wang@intel.com> > > Best, > Wei ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Qemu-devel] [PATCH] migration/ram.c: Fix codes conflict about bitmap_mutex 2019-04-04 8:17 ` Zhang, Chen @ 2019-04-04 8:55 ` Dr. David Alan Gilbert 0 siblings, 0 replies; 5+ messages in thread From: Dr. David Alan Gilbert @ 2019-04-04 8:55 UTC (permalink / raw) To: Zhang, Chen; +Cc: Wang, Wei W, Zhang Chen, Juan Quintela, qemu-dev * Zhang, Chen (chen.zhang@intel.com) wrote: > Ping~ Anyone have comments about this patch? No, it looks good to me, we need to get it merged. Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com> > Thanks > Zhang Chen > > > > -----Original Message----- > > From: Wang, Wei W > > Sent: Monday, April 1, 2019 5:12 PM > > To: Zhang, Chen <chen.zhang@intel.com>; Zhang Chen > > <zhangckid@gmail.com>; Dr. David Alan Gilbert <dgilbert@redhat.com>; Juan > > Quintela <quintela@redhat.com>; qemu-dev <qemu-devel@nongnu.org> > > Subject: Re: [PATCH] migration/ram.c: Fix codes conflict about bitmap_mutex > > > > On 03/30/2019 06:29 AM, Zhang Chen wrote: > > > From: Zhang Chen <chen.zhang@intel.com> > > > > > > I found upstream codes conflict with COLO and lead to crash, and I > > > located to this patch: > > > > > > commit 386a907b37a9321bc5d699bc37104d6ffba1b34d > > > Author: Wei Wang <wei.w.wang@intel.com> > > > Date: Tue Dec 11 16:24:49 2018 +0800 > > > > > > migration: use bitmap_mutex in migration_bitmap_clear_dirty > > > > > > My colleague Wei's patch add bitmap_mutex in > > > migration_bitmap_clear_dirty, but COLO didn't initialize the > > > bitmap_mutex. So we always get an error when COLO start up. like that: > > > qemu-system-x86_64: util/qemu-thread-posix.c:64: qemu_mutex_lock_impl: > > Assertion `mutex->initialized' failed. > > > > > > This patch add the bitmap_mutex initialize and destroy in COLO > > > lifecycle. > > > > > > Signed-off-by: Zhang Chen <chen.zhang@intel.com> > > > --- > > > migration/ram.c | 2 ++ > > > 1 file changed, 2 insertions(+) > > > > > > diff --git a/migration/ram.c b/migration/ram.c index > > > d7f8fe45a8..f68beeeeff 100644 > > > --- a/migration/ram.c > > > +++ b/migration/ram.c > > > @@ -3918,6 +3918,7 @@ int colo_init_ram_cache(void) > > > } > > > ram_state = g_new0(RAMState, 1); > > > ram_state->migration_dirty_pages = 0; > > > + qemu_mutex_init(&ram_state->bitmap_mutex); > > > memory_global_dirty_log_start(); > > > > > > return 0; > > > @@ -3956,6 +3957,7 @@ void colo_release_ram_cache(void) > > > } > > > > > > rcu_read_unlock(); > > > + qemu_mutex_destroy(&ram_state->bitmap_mutex); > > > g_free(ram_state); > > > ram_state = NULL; > > > } > > > > Reviewed-by: Wei Wang <wei.w.wang@intel.com> > > > > Best, > > Wei -- Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Qemu-devel] [PATCH] migration/ram.c: Fix codes conflict about bitmap_mutex [not found] <20190329222951.28945-1-chen.zhang@intel.com> 2019-04-01 9:11 ` [Qemu-devel] [PATCH] migration/ram.c: Fix codes conflict about bitmap_mutex Wei Wang @ 2019-04-05 14:30 ` Dr. David Alan Gilbert 2019-04-05 14:30 ` Dr. David Alan Gilbert 1 sibling, 1 reply; 5+ messages in thread From: Dr. David Alan Gilbert @ 2019-04-05 14:30 UTC (permalink / raw) To: Zhang Chen; +Cc: Zhang Chen, Juan Quintela, qemu-dev, Wei Wang * Zhang Chen (chen.zhang@intel.com) wrote: > From: Zhang Chen <chen.zhang@intel.com> > > I found upstream codes conflict with COLO and lead to crash, > and I located to this patch: Queued. > > commit 386a907b37a9321bc5d699bc37104d6ffba1b34d > Author: Wei Wang <wei.w.wang@intel.com> > Date: Tue Dec 11 16:24:49 2018 +0800 > > migration: use bitmap_mutex in migration_bitmap_clear_dirty > > My colleague Wei's patch add bitmap_mutex in migration_bitmap_clear_dirty, > but COLO didn't initialize the bitmap_mutex. So we always get an error > when COLO start up. like that: > qemu-system-x86_64: util/qemu-thread-posix.c:64: qemu_mutex_lock_impl: Assertion `mutex->initialized' failed. > > This patch add the bitmap_mutex initialize and destroy in COLO > lifecycle. > > Signed-off-by: Zhang Chen <chen.zhang@intel.com> > --- > migration/ram.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/migration/ram.c b/migration/ram.c > index d7f8fe45a8..f68beeeeff 100644 > --- a/migration/ram.c > +++ b/migration/ram.c > @@ -3918,6 +3918,7 @@ int colo_init_ram_cache(void) > } > ram_state = g_new0(RAMState, 1); > ram_state->migration_dirty_pages = 0; > + qemu_mutex_init(&ram_state->bitmap_mutex); > memory_global_dirty_log_start(); > > return 0; > @@ -3956,6 +3957,7 @@ void colo_release_ram_cache(void) > } > > rcu_read_unlock(); > + qemu_mutex_destroy(&ram_state->bitmap_mutex); > g_free(ram_state); > ram_state = NULL; > } > -- > 2.17.GIT > -- Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Qemu-devel] [PATCH] migration/ram.c: Fix codes conflict about bitmap_mutex 2019-04-05 14:30 ` Dr. David Alan Gilbert @ 2019-04-05 14:30 ` Dr. David Alan Gilbert 0 siblings, 0 replies; 5+ messages in thread From: Dr. David Alan Gilbert @ 2019-04-05 14:30 UTC (permalink / raw) To: Zhang Chen; +Cc: Wei Wang, Juan Quintela, qemu-dev, Zhang Chen * Zhang Chen (chen.zhang@intel.com) wrote: > From: Zhang Chen <chen.zhang@intel.com> > > I found upstream codes conflict with COLO and lead to crash, > and I located to this patch: Queued. > > commit 386a907b37a9321bc5d699bc37104d6ffba1b34d > Author: Wei Wang <wei.w.wang@intel.com> > Date: Tue Dec 11 16:24:49 2018 +0800 > > migration: use bitmap_mutex in migration_bitmap_clear_dirty > > My colleague Wei's patch add bitmap_mutex in migration_bitmap_clear_dirty, > but COLO didn't initialize the bitmap_mutex. So we always get an error > when COLO start up. like that: > qemu-system-x86_64: util/qemu-thread-posix.c:64: qemu_mutex_lock_impl: Assertion `mutex->initialized' failed. > > This patch add the bitmap_mutex initialize and destroy in COLO > lifecycle. > > Signed-off-by: Zhang Chen <chen.zhang@intel.com> > --- > migration/ram.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/migration/ram.c b/migration/ram.c > index d7f8fe45a8..f68beeeeff 100644 > --- a/migration/ram.c > +++ b/migration/ram.c > @@ -3918,6 +3918,7 @@ int colo_init_ram_cache(void) > } > ram_state = g_new0(RAMState, 1); > ram_state->migration_dirty_pages = 0; > + qemu_mutex_init(&ram_state->bitmap_mutex); > memory_global_dirty_log_start(); > > return 0; > @@ -3956,6 +3957,7 @@ void colo_release_ram_cache(void) > } > > rcu_read_unlock(); > + qemu_mutex_destroy(&ram_state->bitmap_mutex); > g_free(ram_state); > ram_state = NULL; > } > -- > 2.17.GIT > -- Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2019-04-05 14:46 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <20190329222951.28945-1-chen.zhang@intel.com>
2019-04-01 9:11 ` [Qemu-devel] [PATCH] migration/ram.c: Fix codes conflict about bitmap_mutex Wei Wang
2019-04-04 8:17 ` Zhang, Chen
2019-04-04 8:55 ` Dr. David Alan Gilbert
2019-04-05 14:30 ` Dr. David Alan Gilbert
2019-04-05 14:30 ` Dr. David Alan Gilbert
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).