Re: [PATCH v9 1/5] ACPI: Introduce CPU performance controls using CPPC

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

 



Hi Rafael,

On 28 September 2015 at 09:36, Rafael J. Wysocki <rjw@xxxxxxxxxxxxx> wrote:
> On Sunday, September 27, 2015 01:15:20 PM Ashwin Chaugule wrote:
>> On 25 September 2015 at 20:05, Rafael J. Wysocki <rjw@xxxxxxxxxxxxx> wrote:
>> > On Wednesday, September 09, 2015 04:27:04 PM Ashwin Chaugule wrote:
>> >> +int cppc_get_perf_ctrs(int cpunum, struct cppc_perf_fb_ctrs *perf_fb_ctrs)
>> >> +{
>> >> +     struct cpc_desc *cpc_desc = per_cpu(cpc_desc_ptr, cpunum);
>> >> +     struct cpc_register_resource *delivered_reg, *reference_reg;
>> >> +     u64 delivered, reference;
>> >> +     int ret = 0;
>> >> +
>> >> +     if (!cpc_desc) {
>> >> +             pr_debug("No CPC descriptor for CPU:%d\n", cpunum);
>> >> +             return -ENODEV;
>> >> +     }
>> >> +
>> >> +     delivered_reg = &cpc_desc->cpc_regs[DELIVERED_CTR];
>> >> +     reference_reg = &cpc_desc->cpc_regs[REFERENCE_CTR];
>> >> +
>> >> +     spin_lock(&pcc_lock);
>> >
>> > I still have the question about this lock.
>> >
>> > Why does it have to be a spinlock?
>>
>> The idea is to let CPUs send in their requests as quickly as possible.
>> The PCC transaction only relays the request. So the CPUs don't really
>> wait for all the clk + voltage toggling etc. I think any other
>> primitive, might cause unnecessary delays in sending requests.
>
> It might if there was contention.
>
>> Also FWIW, this is another thing I was influenced by from the pcc-cpufreq.c
>> driver. :)
>
> OK, so this sounds like an optimization, which is fine.
>

Great. Would you prefer a git pull request with the kernel doc +
compiler warning fix, or should I send V10 ?

Regards,
Ashwin.
--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux IBM ACPI]     [Linux Power Management]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux