[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH v5 03/18] xen/cpufreq: extract _PSD info from "struct xen_processor_performance"
On 27.05.2025 10:48, Penny Zheng wrote: > @@ -201,14 +221,14 @@ int cpufreq_add_cpu(unsigned int cpu) > struct cpufreq_dom *cpufreq_dom = NULL; > struct cpufreq_policy new_policy; > struct cpufreq_policy *policy; > - struct processor_performance *perf; > + const struct xen_psd_package *domain_info; > + const struct xen_psd_package **domain_info_ptr = &domain_info; Why's this latter variable needed? Can't you simply ... > + uint32_t shared_type; > > /* to protect the case when Px was not controlled by xen */ > if ( !processor_pminfo[cpu] || !cpu_online(cpu) ) > return -EINVAL; > > - perf = &processor_pminfo[cpu]->perf; > - > if ( !(processor_pminfo[cpu]->init & XEN_PX_INIT) ) > return -EINVAL; > > @@ -218,10 +238,15 @@ int cpufreq_add_cpu(unsigned int cpu) > if (per_cpu(cpufreq_cpu_policy, cpu)) > return 0; > > - if (perf->shared_type == CPUFREQ_SHARED_TYPE_HW) > + ret = get_psd_info(cpu, &shared_type, domain_info_ptr); ... pass &domain_info here, ... > + if ( ret ) > + return ret; > + domain_info = *domain_info_ptr; ... also eliminating the need for this assignment? (Same again further down.) > @@ -464,6 +505,17 @@ static void print_PPC(unsigned int platform_limit) > printk("\t_PPC: %d\n", platform_limit); > } > > +static int check_psd_pminfo(uint32_t shared_type) > +{ > + /* check domain coordination */ Nit: Comment style (wants to start with a capital letter). Yes, there are many bad examples in this file (some even visible in patch context here), but in new code style guidelines should be followed. > + if ( shared_type != CPUFREQ_SHARED_TYPE_ALL && > + shared_type != CPUFREQ_SHARED_TYPE_ANY && > + shared_type != CPUFREQ_SHARED_TYPE_HW ) > + return -EINVAL; > + > + return 0; > +} Looks as if the function would rather want to return a boolean value. And anyway - I can't really spot the need for this helper, as I also can't spot ... > @@ -545,14 +597,9 @@ int set_px_pminfo(uint32_t acpi_id, struct > xen_processor_performance *perf) > > if ( perf->flags & XEN_PX_PSD ) > { > - /* check domain coordination */ > - if ( perf->shared_type != CPUFREQ_SHARED_TYPE_ALL && > - perf->shared_type != CPUFREQ_SHARED_TYPE_ANY && > - perf->shared_type != CPUFREQ_SHARED_TYPE_HW ) > - { > - ret = -EINVAL; > + ret = check_psd_pminfo(perf->shared_type); > + if ( ret ) > goto out; > - } > > pxpt->shared_type = perf->shared_type; > memcpy(&pxpt->domain_info, &perf->domain_info, ... the need for this change. And even if there is a need, a follow-on question would be how this relates to the subject of this patch. Jan
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |