[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] mem-prealloc: initialize cond and mutex
From: |
Igor Mammedov |
Subject: |
Re: [PATCH] mem-prealloc: initialize cond and mutex |
Date: |
Mon, 9 Mar 2020 11:03:31 +0100 |
On Fri, 6 Mar 2020 03:50:14 -0500
Christian Borntraeger <address@hidden> wrote:
> Guests with mem-prealloc do fail with
> qemu-system-s390x: /home/cborntra/REPOS/qemu/util/qemu-thread-posix.c:76:
> qemu_mutex_lock_impl: Assertion `mutex->initialized' failed.
> qemu-system-s390x: /home/cborntra/REPOS/qemu/util/qemu-thread-posix.c:161:
> qemu_cond_broadcast: Assertion `cond->initialized' failed.
>
> Let us initialize cond and mutex.
>
> Cc: bauerchen <address@hidden>
> Cc: Paolo Bonzini <address@hidden>
> Reported-by: Marc Hartmayer <address@hidden>
> Fixes: 037fb5eb3941 ("mem-prealloc: optimize large guest startup")
> Signed-off-by: Christian Borntraeger <address@hidden>
> ---
> util/oslib-posix.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/util/oslib-posix.c b/util/oslib-posix.c
> index 897e8f3ba6..52650183d3 100644
> --- a/util/oslib-posix.c
> +++ b/util/oslib-posix.c
> @@ -470,6 +470,8 @@ static bool touch_all_pages(char *area, size_t hpagesize,
> size_t numpages,
> char *addr = area;
> int i = 0;
>
> + qemu_cond_init(&page_cond);
> + qemu_mutex_init(&page_mutex);
Is it possible for touch_all_pages to be called several times?
If it's then it probably needs a guard against that to make
sure it won't explode, something like:
static bool page_mutex_inited;
if(page_mutex_inited)
page_mutex_inited = true
qemu_mutex_init(&page_mutex)
...
> memset_thread_failed = false;
> threads_created_flag = false;
> memset_num_threads = get_memset_num_threads(smp_cpus);
- [PATCH] mem-prealloc: initialize cond and mutex, Christian Borntraeger, 2020/03/06
- Re: [PATCH] mem-prealloc: initialize cond and mutex, Paolo Bonzini, 2020/03/06
- 回复: [PATCH] mem-prealloc: initialize cond and mutex(Internet mail), 陈蒙蒙, 2020/03/06
- Re: [PATCH] mem-prealloc: initialize cond and mutex,
Igor Mammedov <=
- Re: [PATCH] mem-prealloc: initialize cond and mutex, Paolo Bonzini, 2020/03/09
- Re: [PATCH] mem-prealloc: initialize cond and mutex, Christian Borntraeger, 2020/03/09
- Re: Re: [PATCH] mem-prealloc: initialize cond and mutex(Internet mail), 陈蒙蒙, 2020/03/09
- Re: [PATCH] mem-prealloc: initialize cond and mutex(Internet mail), Igor Mammedov, 2020/03/09
- Re: Re: [PATCH] mem-prealloc: initialize cond and mutex(Internet mail), 陈蒙蒙, 2020/03/10
- Re: [PATCH] mem-prealloc: initialize cond and mutex(Internet mail), Paolo Bonzini, 2020/03/11
- Re: Re: [PATCH] mem-prealloc: initialize cond and mutex(Internet mail), 陈蒙蒙, 2020/03/12