[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [RFC PATCH v2 09/12] xen: arm: implement platform hypercall
On Wed, Oct 22, 2014 at 12:24 PM, Jan Beulich <JBeulich@xxxxxxxx> wrote: >>>> On 22.10.14 at 10:40, <oleksandr.dmytryshyn@xxxxxxxxxxxxxxx> wrote: >> On Fri, Oct 17, 2014 at 3:44 PM, Jan Beulich <JBeulich@xxxxxxxx> wrote: >>>>>> On 16.10.14 at 13:27, <oleksandr.dmytryshyn@xxxxxxxxxxxxxxx> wrote: >>>> +long arch_do_platform_op(struct xen_platform_op *platform_op, >>>> + XEN_GUEST_HANDLE_PARAM(xen_platform_op_t) >> u_xenpf_op) >>>> +{ >>>> + long ret = 0; >>>> + struct xen_platform_op *op = platform_op; >>>> + >>>> + switch ( op->cmd ) >>>> + { >>>> + case XENPF_set_processor_pminfo: >>>> + switch ( op->u.set_pminfo.type ) >>>> + { >>>> + case XEN_PM_PX: >>>> + if ( !(xen_processor_pmbits & XEN_PROCESSOR_PM_PX) ) >>>> + { >>>> + ret = -ENOSYS; >>>> + break; >>>> + } >>>> +#ifdef HAS_CPUFREQ >>>> + ret = set_px_pminfo(op->u.set_pminfo.id, >> &op->u.set_pminfo.u.perf); >>> >>> This cannot possibly be HAS_CPUFREQ, since ->u.set_pminfo >>> specifically uses ACPI notation for e.g. the CPU numbering. And >>> with that it becomes questionable whether the whole series is >>> doing right in abstracting away ACPI. >> set_px_pminfo() function is implemented in the cpufreq.c file and this file >> will be compiled only if HAS_CPUFREQ is defined. Thus I've used HAS_CPUFREQ >> in >> this case. If HAS_CPUFREQ is not defined then set_px_pminfo() will not be >> compiled and there will be errors on compilation without this definition. >> ->u.set_pminfo uses ACPI notation for the CPU numbering but >> patch "cpufreq: make cpufreq driver more generalizable" skips ACPI >> notation for the CPU numbering if CONFIG_ACPI is not defined. > > This all looks very kludgy and hence is likely going to become a > maintenance nightmare. Please separate things properly that are > separate by design. Yes, It all looks very kludgy. But now ->u.set_pminfo can be reused for non-ACPI cases. set_px_pminfo() function can be reused for non-ACPI cases too. Thus this function is not only ACPI-specific. This function can be CPUFREQ-specific in this context. > Jan > _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |