tree: git://github.com/agraf/linux-2.6.git kvm-ppc-queue
head: cc75c6b1368c88977d6015fd67b02c85ee04e57c
commit: c98d80c7b761a4b3bcbcc9314c4492f76585caa0 [6/9] KVM: PPC: Book3S HV:
Implement dynamic micro-threading on POWER8
config: powerpc-defconfig (attached as .config)
reproduce:
wget
https://git.kernel.org/cgit/linux/kernel/git/wfg/lkp-tests.git/plain/sbin/make.cross
-O ~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout c98d80c7b761a4b3bcbcc9314c4492f76585caa0
# save the attached .config to linux build tree
make.cross ARCH=powerpc
All warnings (new ones prefixed by >>):
>> kernel/fork.c:99:0: warning: "MAX_THREADS" redefined
#define MAX_THREADS FUTEX_TID_MASK
^
In file included from arch/powerpc/include/asm/paca.h:25:0,
from arch/powerpc/include/asm/hw_irq.h:42,
from arch/powerpc/include/asm/irqflags.h:11,
from include/linux/irqflags.h:15,
from include/linux/spinlock.h:53,
from include/linux/mmzone.h:7,
from include/linux/gfp.h:5,
from include/linux/slab.h:14,
from kernel/fork.c:14:
arch/powerpc/include/asm/kvm_book3s_asm.h:29:0: note: this is the location
of the previous definition
#define MAX_THREADS 8
^
>> kernel/fork.c:99:0: warning: "MAX_THREADS" redefined
#define MAX_THREADS FUTEX_TID_MASK
^
In file included from arch/powerpc/include/asm/paca.h:25:0,
from arch/powerpc/include/asm/hw_irq.h:42,
from arch/powerpc/include/asm/irqflags.h:11,
from include/linux/irqflags.h:15,
from include/linux/spinlock.h:53,
from include/linux/mmzone.h:7,
from include/linux/gfp.h:5,
from include/linux/slab.h:14,
from kernel/fork.c:14:
arch/powerpc/include/asm/kvm_book3s_asm.h:29:0: note: this is the location
of the previous definition
#define MAX_THREADS 8
^
vim +/MAX_THREADS +99 kernel/fork.c
^1da177e Linus Torvalds 2005-04-16 83 #include
^1da177e Linus Torvalds 2005-04-16 84 #include
^1da177e Linus Torvalds 2005-04-16 85
ad8d75ff Steven Rostedt 2009-04-14 86 #include
ad8d75ff Steven Rostedt 2009-04-14 87
43d2b113 KAMEZAWA Hiroyuki 2012-01-10 88 #define CREATE_TRACE_POINTS
43d2b113 KAMEZAWA Hiroyuki 2012-01-10 89 #include
43d2b113 KAMEZAWA Hiroyuki 2012-01-10 90
^1da177e Linus Torvalds 2005-04-16 91 /*
ac1b398d Heinrich Schuchardt 2015-04-16 92 * Minimum number of threads to
boot the kernel
ac1b398d Heinrich Schuchardt 2015-04-16 93 */
ac1b398d Heinrich Schuchardt 2015-04-16 94 #define MIN_THREADS 20
ac1b398d Heinrich Schuchardt 2015-04-16 95
ac1b398d Heinrich Schuchardt 2015-04-16 96 /*
ac1b398d Heinrich Schuchardt 2015-04-16 97 * Maximum number of threads
ac1b398d Heinrich Schuchardt 2015-04-16 98 */
ac1b398d Heinrich Schuchardt 2015-04-16 @99 #define MAX_THREADS FUTEX_TID_MASK
ac1b398d Heinrich Schuchardt 2015-04-16 100
ac1b398d Heinrich Schuchardt 2015-04-16 101 /*
^1da177e Linus Torvalds 2005-04-16 102 * Protected counters by
write_lock_irq(&tasklist_lock)
^1da177e Linus Torvalds 2005-04-16 103 */
^1da177e Linus Torvalds 2005-04-16 104 unsigned long total_forks;
/* Handle normal Linux uptimes. */
^1da177e Linus Torvalds 2005-04-16 105 int nr_threads;
/* The idle threads do not count.. */
^1da177e Linus Torvalds 2005-04-16 106
^1da177e Linus Torvalds 2005-04-16 107 int max_threads; /*
tunable limit on nr_threads */
:: The code at line 99 was first introduced by commit
:: ac1b398de1ef94aeee8ba87b0120763526572a6e kernel/fork.c: avoid division
by zero
:: TO: Heinrich Schuchardt
:: CC: Linus Torvalds
---
0-DAY kernel test infrastructureOpen Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
#
# Automatically generated file; DO NOT EDIT.
# Linux/powerpc 4.1.0 Kernel Configuration
#
CONFIG_PPC64=y
#
# Processor support
#
CONFIG_PPC_BOOK3S_64=y
# CONFIG_PPC_BOOK3E_64 is not set
CONFIG_GENERIC_CPU=y
# CONFIG_CELL_CPU is not set
# CONFIG_POWER4_CPU is not set
# CONFIG_POWER5_CPU is not set
# CONFIG_POWER6_CPU is not set
# CONFIG_POWER7_CPU is not set
# CONFIG_POWER8_CPU is not set
CONFIG_PPC_BOOK3S=y
# CONFIG_TUNE_CELL is not set
CONFIG_PPC_FPU=y
CONFIG_ALTIVEC=y
CONFIG_VSX=y
# CONFIG_PPC_ICSWX is not set
CONFIG_PPC_STD_MMU=y
CONFIG_PPC_STD_MMU_64=y
CONFIG_PPC_MM_SLICES=y
CONFIG_PPC_HAVE_PMU_SUPPORT=y
CONFIG_PPC_PERF_CTRS=y
CONFIG_SMP=y
CONFIG_NR_CPUS=32
CONFIG_PPC_DOORBELL=y
CONFIG_VDSO32=y
CONFIG_CPU_BIG_ENDIAN=y
# CONFIG_CPU_LITTLE_ENDIAN is not set
CONFIG_64BIT=y
CONFIG_WORD_SIZE=64
CONFIG_ARCH_PHYS_ADDR_T_64BIT=y
CONFIG_ARCH_DMA_ADDR_T_64BIT=y
CONFIG_MMU=y
C