aboutsummaryrefslogtreecommitdiffstats
path: root/arch/powerpc/include/asm/processor.h
diff options
context:
space:
mode:
authorGleb Natapov <gleb@redhat.com>2013-11-04 03:20:57 -0500
committerGleb Natapov <gleb@redhat.com>2013-11-04 03:20:57 -0500
commit95f328d3ad1a8e4e3175a18546fb35c495e31130 (patch)
tree2f6496ef8354e9a0a315f23faef744f93fee8265 /arch/powerpc/include/asm/processor.h
parentdaf727225b8abfdfe424716abac3d15a3ac5626a (diff)
parenta78b55d1c0218b6d91d504941d20e36435c276f5 (diff)
Merge branch 'kvm-ppc-queue' of git://github.com/agraf/linux-2.6 into queue
Conflicts: arch/powerpc/include/asm/processor.h
Diffstat (limited to 'arch/powerpc/include/asm/processor.h')
-rw-r--r--arch/powerpc/include/asm/processor.h37
1 files changed, 22 insertions, 15 deletions
diff --git a/arch/powerpc/include/asm/processor.h b/arch/powerpc/include/asm/processor.h
index ce4de5aed7b5..75a9e5a34ef9 100644
--- a/arch/powerpc/include/asm/processor.h
+++ b/arch/powerpc/include/asm/processor.h
@@ -147,21 +147,7 @@ typedef struct {
147#define TS_FPR(i) fpr[i][TS_FPROFFSET] 147#define TS_FPR(i) fpr[i][TS_FPROFFSET]
148#define TS_TRANS_FPR(i) transact_fpr[i][TS_FPROFFSET] 148#define TS_TRANS_FPR(i) transact_fpr[i][TS_FPROFFSET]
149 149
150struct thread_struct { 150struct debug_reg {
151 unsigned long ksp; /* Kernel stack pointer */
152#ifdef CONFIG_PPC64
153 unsigned long ksp_vsid;
154#endif
155 struct pt_regs *regs; /* Pointer to saved register state */
156 mm_segment_t fs; /* for get_fs() validation */
157#ifdef CONFIG_BOOKE
158 /* BookE base exception scratch space; align on cacheline */
159 unsigned long normsave[8] ____cacheline_aligned;
160#endif
161#ifdef CONFIG_PPC32
162 void *pgdir; /* root of page-table tree */
163 unsigned long ksp_limit; /* if ksp <= ksp_limit stack overflow */
164#endif
165#ifdef CONFIG_PPC_ADV_DEBUG_REGS 151#ifdef CONFIG_PPC_ADV_DEBUG_REGS
166 /* 152 /*
167 * The following help to manage the use of Debug Control Registers 153 * The following help to manage the use of Debug Control Registers
@@ -198,6 +184,27 @@ struct thread_struct {
198 unsigned long dvc2; 184 unsigned long dvc2;
199#endif 185#endif
200#endif 186#endif
187};
188
189struct thread_struct {
190 unsigned long ksp; /* Kernel stack pointer */
191
192#ifdef CONFIG_PPC64
193 unsigned long ksp_vsid;
194#endif
195 struct pt_regs *regs; /* Pointer to saved register state */
196 mm_segment_t fs; /* for get_fs() validation */
197#ifdef CONFIG_BOOKE
198 /* BookE base exception scratch space; align on cacheline */
199 unsigned long normsave[8] ____cacheline_aligned;
200#endif
201#ifdef CONFIG_PPC32
202 void *pgdir; /* root of page-table tree */
203 unsigned long ksp_limit; /* if ksp <= ksp_limit stack overflow */
204#endif
205 /* Debug Registers */
206 struct debug_reg debug;
207
201 /* FP and VSX 0-31 register set */ 208 /* FP and VSX 0-31 register set */
202 double fpr[32][TS_FPRWIDTH] __attribute__((aligned(16))); 209 double fpr[32][TS_FPRWIDTH] __attribute__((aligned(16)));
203 struct { 210 struct {