On 02/23/2012 05:12 AM, Will Deacon wrote:
> Hi Will,
>
> On Thu, Feb 23, 2012 at 04:08:23AM +0000, William Cohen wrote:
>>
>> I was looking to see why the arm kernel builds for fedora 17 were failing with:
>>
>> arch/arm/oprofile/../../../drivers/oprofile/oprofile_perf.c:28:28: error: variably modified 'perf_events' at file scope
>>
>> The error points to the following line in oprofile_perf.c:
>>
>> static struct perf_event **perf_events[nr_cpumask_bits];
>>
>> The nr_cpumask_bits is defined in linux/include/linux/cpumask.h with
>> the following snippet of code:
>>
>> #if NR_CPUS == 1
>> #define nr_cpu_ids 1
>> #else
>> extern int nr_cpu_ids;
>> #endif
>>
>> #ifdef CONFIG_CPUMASK_OFFSTACK
>> /* Assuming NR_CPUS is huge, a runtime limit is more efficient. Also,
>> * not all bits may be allocated. */
>> #define nr_cpumask_bits nr_cpu_ids
>> #else
>> #define nr_cpumask_bits NR_CPUS
>> #endif
>>
>> The problem is that several arm machines have more than one processor
>> (CONFIG_NR_CPUS>1), making nr_cpumask_bits be a variable rather than a
>> compile time constant. Seems like the kernel should dynamically allocate
>> space for perf_events[nr_cpumask_bits] because of the variable nature
>> of nr_cpu_mask_bits.
>
> That or use NR_CPUS instead (which will be the same as nr_cpu_ids on ARM).
>
> One thing I'm curious about is why you have CONFIG_CPUMASK_OFFSTACK selected
> for the Fedora kernel? That implies you have DEBUG_PER_CPU_MAPS selected
> which, according to Kconfig, `adds a fair amount of code to kernel memory
> and decreases performance'.
>
> Cheers,
>
> Will
When I was building kernels locally I didn't see this problem because of:
# CONFIG_DEBUG_PER_CPU_MAPS is not set
So adding that to the config-arm-generic of the kenrel source rpm, should be a work around for this problem.
-Will
_______________________________________________
arm mailing list
arm@xxxxxxxxxxxxxxxxxxxxxxx
https://admin.fedoraproject.org/mailman/listinfo/arm
[Linux ARM (Vger)]
[Linux ARM]
[ARM Kernel]
[Fedora User Discussion]
[Older Fedora Users Discussion]
[Fedora Advisory Board]
[Fedora Security]
[Fedora Maintainers]
[Fedora Devel Java]
[Fedora Legacy]
[Fedora Desktop]
[ATA RAID]
[Fedora Marketing]
[Fedora Mentors]
[Fedora Package Announce]
[Fedora Package Review]
[Fedora Music]
[Fedora Packaging]
[Centos]
[Fedora SELinux]
[Fedora Triage]
[Deep Creek Hot Springs]
[Coolkey]
[Yum Users]
[Tux]
[Big List of Linux Books]
[Yosemite News]
[Yosemite Photos]
[Linux Apps]
[KDE Users]
[Fedora Tools]
[Fedora Art]
[Fedora Docs]
[Asterisk PBX]