mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-01 06:43:53 -06:00
user: Declare get_task_state() once in 'accel/tcg/vcpu-state.h'
While each user emulation implentation defines its own TaskState structure, both use the same get_task_state() declaration, in particular in common code (such gdbstub). Declare the method once in "accel/tcg/vcpu-state.h". Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Message-Id: <20240428221450.26460-10-philmd@linaro.org>
This commit is contained in:
parent
ef932e21bd
commit
8019601324
3 changed files with 20 additions and 10 deletions
18
accel/tcg/vcpu-state.h
Normal file
18
accel/tcg/vcpu-state.h
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
/*
|
||||||
|
* SPDX-FileContributor: Philippe Mathieu-Daudé <philmd@linaro.org>
|
||||||
|
* SPDX-FileCopyrightText: 2023 Linaro Ltd.
|
||||||
|
* SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
*/
|
||||||
|
#ifndef ACCEL_TCG_VCPU_STATE_H
|
||||||
|
#define ACCEL_TCG_VCPU_STATE_H
|
||||||
|
|
||||||
|
#include "hw/core/cpu.h"
|
||||||
|
|
||||||
|
#ifdef CONFIG_USER_ONLY
|
||||||
|
static inline TaskState *get_task_state(const CPUState *cs)
|
||||||
|
{
|
||||||
|
return cs->opaque;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif
|
|
@ -36,6 +36,7 @@ extern char **environ;
|
||||||
#include "exec/gdbstub.h"
|
#include "exec/gdbstub.h"
|
||||||
#include "exec/page-protection.h"
|
#include "exec/page-protection.h"
|
||||||
#include "qemu/clang-tsa.h"
|
#include "qemu/clang-tsa.h"
|
||||||
|
#include "accel/tcg/vcpu-state.h"
|
||||||
|
|
||||||
#include "qemu-os.h"
|
#include "qemu-os.h"
|
||||||
/*
|
/*
|
||||||
|
@ -116,11 +117,6 @@ struct TaskState {
|
||||||
struct target_sigaltstack sigaltstack_used;
|
struct target_sigaltstack sigaltstack_used;
|
||||||
} __attribute__((aligned(16)));
|
} __attribute__((aligned(16)));
|
||||||
|
|
||||||
static inline TaskState *get_task_state(CPUState *cs)
|
|
||||||
{
|
|
||||||
return cs->opaque;
|
|
||||||
}
|
|
||||||
|
|
||||||
void stop_all_tasks(void);
|
void stop_all_tasks(void);
|
||||||
extern const char *interp_prefix;
|
extern const char *interp_prefix;
|
||||||
extern const char *qemu_uname_release;
|
extern const char *qemu_uname_release;
|
||||||
|
|
|
@ -8,6 +8,7 @@
|
||||||
|
|
||||||
#include "syscall_defs.h"
|
#include "syscall_defs.h"
|
||||||
#include "target_syscall.h"
|
#include "target_syscall.h"
|
||||||
|
#include "accel/tcg/vcpu-state.h"
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* This is the size of the host kernel's sigset_t, needed where we make
|
* This is the size of the host kernel's sigset_t, needed where we make
|
||||||
|
@ -160,11 +161,6 @@ struct TaskState {
|
||||||
uint64_t start_boottime;
|
uint64_t start_boottime;
|
||||||
};
|
};
|
||||||
|
|
||||||
static inline TaskState *get_task_state(CPUState *cs)
|
|
||||||
{
|
|
||||||
return cs->opaque;
|
|
||||||
}
|
|
||||||
|
|
||||||
abi_long do_brk(abi_ulong new_brk);
|
abi_long do_brk(abi_ulong new_brk);
|
||||||
int do_guest_openat(CPUArchState *cpu_env, int dirfd, const char *pathname,
|
int do_guest_openat(CPUArchState *cpu_env, int dirfd, const char *pathname,
|
||||||
int flags, mode_t mode, bool safe);
|
int flags, mode_t mode, bool safe);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue