lkml.org 
[lkml]   [2008]   [Jan]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 00/10] percpu: Per cpu code simplification V3
Ingo Molnar wrote:
> * travis@sgi.com <travis@sgi.com> wrote:
>
>> This patchset simplifies the code that arches need to maintain to
>> support per cpu functionality. Most of the code is moved into arch
>> independent code. Only a minimal set of definitions is kept for each
>> arch.
>>
>> The patch also unifies the x86 arch so that there is only a single
>> asm-x86/percpu.h
>>
>> V1->V2:
>> - Add support for specifying attributes for per cpu declarations (preserves
>> IA64 model(small) attribute).
>> - Drop first patch that removes the model(small) attribute for IA64
>> - Missing #endif in powerpc generic config / Wrong Kconfig
>> - Follow Randy's suggestions on how to do the Kconfig settings
>>
>> V2->V3:
>> - fix x86_64 non-SMP case
>> - change SHIFT_PTR to SHIFT_PERCPU_PTR
>> - fix various percpu_modcopy()'s to reference correct per_cpu_offset()
>> - s390 has a special way to determine the pointer to a per cpu area
>
> thanks, i've picked up the x86 and core bits, for testing.
>
> i had the patch below for v2, it's still needed (because i didnt apply
> the s390/etc. bits), right?
>
> Ingo

Yes, good point. Thanks.

Mike

>
> ------------->
> Subject: x86: let other arches build
> From: Ingo Molnar <mingo@elte.hu>
>
> let architectures which still have the DEFINE_PER_CPU/etc. build
> properly.
>
> Signed-off-by: Ingo Molnar <mingo@elte.hu>
> ---
> include/linux/percpu.h | 2 ++
> 1 file changed, 2 insertions(+)
>
> Index: linux-x86.q/include/linux/percpu.h
> ===================================================================
> --- linux-x86.q.orig/include/linux/percpu.h
> +++ linux-x86.q/include/linux/percpu.h
> @@ -14,6 +14,7 @@
> #endif
>
> #ifdef CONFIG_SMP
> +#ifndef DEFINE_PER_CPU
> #define DEFINE_PER_CPU(type, name) \
> __attribute__((__section__(".data.percpu"))) \
> PER_CPU_ATTRIBUTES __typeof__(type) per_cpu__##name
> @@ -32,6 +33,7 @@
>
> #define EXPORT_PER_CPU_SYMBOL(var) EXPORT_SYMBOL(per_cpu__##var)
> #define EXPORT_PER_CPU_SYMBOL_GPL(var) EXPORT_SYMBOL_GPL(per_cpu__##var)
> +#endif
>
> /* Enough to cover all DEFINE_PER_CPUs in kernel, including modules. */
> #ifndef PERCPU_ENOUGH_ROOM



\
 
 \ /
  Last update: 2008-01-08 17:31    [W:0.091 / U:0.276 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site