[PATCH v2 0/6] powerpc: use jump label for {cpu,mmu}_has_feature()

Ingo Molnar mingo at kernel.org
Tue Aug 25 18:23:47 AEST 2015


* Kevin Hao <haokexin at gmail.com> wrote:

> Hi,
> 
> v2:
> Drop the following two patches as suggested by Ingo and Peter:
>     jump_label: no need to acquire the jump_label_mutex in jump_lable_init()
>     jump_label: introduce DEFINE_STATIC_KEY_{TRUE,FALSE}_ARRAY macros
> 
> v1:
> I have tried to change the {cpu,mmu}_has_feature() to use jump label two yeas
> ago [1]. But that codes seem a bit ugly. This is a reimplementation by moving the
> jump_label_init() much earlier so the jump label can be used in a very earlier
> stage. Boot test on p4080ds, t2080rdb and powermac (qemu). This patch series
> is against linux-next.
> 
> [1] https://lists.ozlabs.org/pipermail/linuxppc-dev/2013-September/111026.html
> 
> Kevin Hao (6):
>   jump_label: make it possible for the archs to invoke jump_label_init()
>     much earlier
>   powerpc: invoke jump_label_init() in a much earlier stage
>   powerpc: kill mfvtb()
>   powerpc: move the cpu_has_feature to a separate file
>   powerpc: use the jump label for cpu_has_feature
>   powerpc: use jump label for mmu_has_feature
> 
>  arch/powerpc/include/asm/cacheflush.h   |  1 +
>  arch/powerpc/include/asm/cpufeatures.h  | 34 ++++++++++++++++++++++++++++++
>  arch/powerpc/include/asm/cputable.h     | 16 +++++++-------
>  arch/powerpc/include/asm/cputime.h      |  1 +
>  arch/powerpc/include/asm/dbell.h        |  1 +
>  arch/powerpc/include/asm/dcr-native.h   |  1 +
>  arch/powerpc/include/asm/mman.h         |  1 +
>  arch/powerpc/include/asm/mmu.h          | 29 ++++++++++++++++++++++++++
>  arch/powerpc/include/asm/reg.h          |  9 --------
>  arch/powerpc/include/asm/time.h         |  3 ++-
>  arch/powerpc/include/asm/xor.h          |  1 +
>  arch/powerpc/kernel/align.c             |  1 +
>  arch/powerpc/kernel/cputable.c          | 37 +++++++++++++++++++++++++++++++++
>  arch/powerpc/kernel/irq.c               |  1 +
>  arch/powerpc/kernel/process.c           |  1 +
>  arch/powerpc/kernel/setup-common.c      |  1 +
>  arch/powerpc/kernel/setup_32.c          |  5 +++++
>  arch/powerpc/kernel/setup_64.c          |  4 ++++
>  arch/powerpc/kernel/smp.c               |  1 +
>  arch/powerpc/platforms/cell/pervasive.c |  1 +
>  arch/powerpc/xmon/ppc-dis.c             |  1 +
>  kernel/jump_label.c                     |  3 +++
>  22 files changed, 135 insertions(+), 18 deletions(-)
>  create mode 100644 arch/powerpc/include/asm/cpufeatures.h

Looks good to me!

Thanks,

	Ingo


More information about the Linuxppc-dev mailing list