qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH 2/2] linux-user: remove #define smp_{cores, thre


From: Eduardo Habkost
Subject: Re: [Qemu-devel] [PATCH 2/2] linux-user: remove #define smp_{cores, threads}
Date: Fri, 16 Sep 2016 16:36:48 -0300
User-agent: Mutt/1.7.0 (2016-08-17)

On Fri, Sep 16, 2016 at 07:50:24PM +0400, Marc-André Lureau wrote:
> Those are unneeded now that CPUState nr_{cores,threads} is always
> initialized.
> 
> Signed-off-by: Marc-André Lureau <address@hidden>

Reviewed-by: Eduardo Habkost <address@hidden>

I will wait for at least an Acked-by from the PPC maintainers
before I merge it, though.

> ---
>  target-i386/cpu.c           | 8 ++++----
>  target-ppc/translate_init.c | 3 ++-
>  include/sysemu/cpus.h       | 5 +----
>  3 files changed, 7 insertions(+), 9 deletions(-)
> 
> diff --git a/target-i386/cpu.c b/target-i386/cpu.c
> index 5a5299a..e863bea 100644
> --- a/target-i386/cpu.c
> +++ b/target-i386/cpu.c
> @@ -2490,13 +2490,13 @@ void cpu_x86_cpuid(CPUX86State *env, uint32_t index, 
> uint32_t count,
>  
>          switch (count) {
>          case 0:
> -            *eax = apicid_core_offset(smp_cores, smp_threads);
> -            *ebx = smp_threads;
> +            *eax = apicid_core_offset(cs->nr_cores, cs->nr_threads);
> +            *ebx = cs->nr_threads;
>              *ecx |= CPUID_TOPOLOGY_LEVEL_SMT;
>              break;
>          case 1:
> -            *eax = apicid_pkg_offset(smp_cores, smp_threads);
> -            *ebx = smp_cores * smp_threads;
> +            *eax = apicid_pkg_offset(cs->nr_cores, cs->nr_threads);
> +            *ebx = cs->nr_cores * cs->nr_threads;
>              *ecx |= CPUID_TOPOLOGY_LEVEL_CORE;
>              break;
>          default:
> diff --git a/target-ppc/translate_init.c b/target-ppc/translate_init.c
> index 407ccb9..b66b40b 100644
> --- a/target-ppc/translate_init.c
> +++ b/target-ppc/translate_init.c
> @@ -9943,7 +9943,8 @@ static void ppc_cpu_unrealizefn(DeviceState *dev, Error 
> **errp)
>  
>  int ppc_get_compat_smt_threads(PowerPCCPU *cpu)
>  {
> -    int ret = MIN(smp_threads, kvmppc_smt_threads());
> +    CPUState *cs = CPU(cpu);
> +    int ret = MIN(cs->nr_threads, kvmppc_smt_threads());
>  
>      switch (cpu->cpu_version) {
>      case CPU_POWERPC_LOGICAL_2_05:
> diff --git a/include/sysemu/cpus.h b/include/sysemu/cpus.h
> index fe992a8..3728a1e 100644
> --- a/include/sysemu/cpus.h
> +++ b/include/sysemu/cpus.h
> @@ -29,12 +29,9 @@ void qtest_clock_warp(int64_t dest);
>  
>  #ifndef CONFIG_USER_ONLY
>  /* vl.c */
> +/* *-user doesn't have configurable SMP topology */
>  extern int smp_cores;
>  extern int smp_threads;
> -#else
> -/* *-user doesn't have configurable SMP topology */
> -#define smp_cores   1
> -#define smp_threads 1
>  #endif
>  
>  void list_cpus(FILE *f, fprintf_function cpu_fprintf, const char *optarg);
> -- 
> 2.10.0
> 

-- 
Eduardo



reply via email to

[Prev in Thread] Current Thread [Next in Thread]