[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v2 11/15] bsd-user: Add stop_all_tasks
From: |
Kyle Evans |
Subject: |
Re: [PATCH v2 11/15] bsd-user: Add stop_all_tasks |
Date: |
Sun, 17 Oct 2021 22:44:37 -0500 |
On Fri, Oct 8, 2021 at 6:15 PM Warner Losh <imp@bsdimp.com> wrote:
>
> Similar to the same function in linux-user: this stops all the current tasks.
>
> Signed-off-by: Stacey Son <sson@FreeBSD.org>
> Signed-off-by: Warner Losh <imp@bsdimp.com>
> ---
> bsd-user/main.c | 9 +++++++++
> bsd-user/qemu.h | 1 +
> 2 files changed, 10 insertions(+)
>
> diff --git a/bsd-user/main.c b/bsd-user/main.c
> index ee84554854..cb5ea40236 100644
> --- a/bsd-user/main.c
> +++ b/bsd-user/main.c
> @@ -195,6 +195,15 @@ static void usage(void)
>
> __thread CPUState *thread_cpu;
>
> +void stop_all_tasks(void)
> +{
> + /*
> + * We trust when using NPTL (pthreads) start_exclusive() handles thread
> + * stopping correctly.
> + */
> + start_exclusive();
> +}
> +
> bool qemu_cpu_is_self(CPUState *cpu)
> {
> return thread_cpu == cpu;
> diff --git a/bsd-user/qemu.h b/bsd-user/qemu.h
> index c1170f14d9..cdb85140f4 100644
> --- a/bsd-user/qemu.h
> +++ b/bsd-user/qemu.h
> @@ -103,6 +103,7 @@ typedef struct TaskState {
> } __attribute__((aligned(16))) TaskState;
>
> void init_task_state(TaskState *ts);
> +void stop_all_tasks(void);
> extern const char *qemu_uname_release;
>
> /*
> --
> 2.32.0
>
Reviewed-by: Kyle Evans <kevans@FreeBSD.org>
- [PATCH v2 08/15] bsd-user/target_os_elf.h: Remove fallback ELF_HWCAP and reorder, (continued)
- [PATCH v2 08/15] bsd-user/target_os_elf.h: Remove fallback ELF_HWCAP and reorder, Warner Losh, 2021/10/08
- [PATCH v2 12/15] bsd-user/sysarch: Move to using do_freebsd_arch_sysarch interface, Warner Losh, 2021/10/08
- [PATCH v2 14/15] bsd-user: Rename sigqueue to qemu_sigqueue, Warner Losh, 2021/10/08
- [PATCH v2 13/15] bsd-user/sysarch: Provide a per-arch framework for sysarch syscall, Warner Losh, 2021/10/08
- [PATCH v2 11/15] bsd-user: Add stop_all_tasks, Warner Losh, 2021/10/08
- [PATCH v2 15/15] bsd-user/signal: Create a dummy signal queueing function, Warner Losh, 2021/10/08