mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH] ppc64: Correct alignment for lppaca in paca_struct
@ 2004-12-09 14:34 Anton Blanchard
  2004-12-09 14:46 ` Anton Blanchard
  0 siblings, 1 reply; 2+ messages in thread
From: Anton Blanchard @ 2004-12-09 14:34 UTC (permalink / raw)
  To: akpm; +Cc: willschm, linux-kernel


Hi Andrew,

I think this is 2.6.10 material, as well as lparcfg it fixes a nasty 
bug in our shared processor support (some cpus fail to recognise they
are in shared processor mode).

Anton

--

From: Will Schmidt <willschm@us.ibm.com>

We found that we were failing register_vpa calls in cases where the lppaca
structure (part of the PACA) crosses a page boundary.

This was causing us (lparcfg specifically) some grief as the xSharedProc bit 
was not being set.

The attached patch changes the alignment of the lppaca structure, and a few 
comments so we understand why.

Signed-off-by: Will Schmidt <willschm@us.ibm.com>
Signed-off-by: Anton Blanchard <anton@samba.org>

--- a/include/asm-ppc64/paca.h	2004-12-03 13:03:09.048520608 -0600
+++ b/include/asm-ppc64/paca.h	2004-12-03 13:18:17.433655752 -0600
@@ -99,11 +99,13 @@
 	u64 exdsi[8];		/* used for linear mapping hash table misses 
 	*/

 	/*
-	 * iSeries structues which the hypervisor knows about - Not
-	 * sure if these particularly need to be cacheline aligned.
+	 * iSeries structues which the hypervisor knows about -
+	 * This structure should not cross a page boundary.
+	 * The vpa_init/register_vpa call is now known to fail if the lppaca
+	 * structure crosses a page boundary.
 	 * The lppaca is also used on POWER5 pSeries boxes.
 	 */
-	struct ItLpPaca lppaca __attribute__((aligned(0x80)));
+	struct ItLpPaca lppaca __attribute__((aligned(0x400)));
 #ifdef CONFIG_PPC_ISERIES
 	struct ItLpRegSave reg_save;
 #endif


^ permalink raw reply	[flat|nested] 2+ messages in thread

* [PATCH] ppc64: Correct alignment for lppaca in paca_struct
  2004-12-09 14:34 [PATCH] ppc64: Correct alignment for lppaca in paca_struct Anton Blanchard
@ 2004-12-09 14:46 ` Anton Blanchard
  0 siblings, 0 replies; 2+ messages in thread
From: Anton Blanchard @ 2004-12-09 14:46 UTC (permalink / raw)
  To: akpm; +Cc: willschm, linux-kernel


Hi Andrew,

Sorry, last patch was mangled in some way.

I think this is 2.6.10 material, as well as lparcfg it fixes a nasty 
bug in our shared processor support (some cpus fail to recognise they
are in shared processor mode).

Anton

--

From: Will Schmidt <willschm@us.ibm.com>

We found that we were failing register_vpa calls in cases where the lppaca
structure (part of the PACA) crosses a page boundary.

This was causing us (lparcfg specifically) some grief as the xSharedProc bit 
was not being set.

The attached patch changes the alignment of the lppaca structure, and a few 
comments so we understand why.

Signed-off-by: Will Schmidt <willschm@us.ibm.com>
Signed-off-by: Anton Blanchard <anton@samba.org>

diff -puN include/asm-ppc64/paca.h~vpa_align include/asm-ppc64/paca.h
--- foobar2/include/asm-ppc64/paca.h~vpa_align	2004-12-10 01:40:32.325580252 +1100
+++ foobar2-anton/include/asm-ppc64/paca.h	2004-12-10 01:41:14.558646921 +1100
@@ -99,11 +99,13 @@ struct paca_struct {
 	u64 exdsi[8];		/* used for linear mapping hash table misses */
 
 	/*
-	 * iSeries structues which the hypervisor knows about - Not
-	 * sure if these particularly need to be cacheline aligned.
+	 * iSeries structues which the hypervisor knows about -
+	 * This structure should not cross a page boundary.
+	 * The vpa_init/register_vpa call is now known to fail if the lppaca
+	 * structure crosses a page boundary.
 	 * The lppaca is also used on POWER5 pSeries boxes.
 	 */
-	struct ItLpPaca lppaca __attribute__((aligned(0x80)));
+	struct ItLpPaca lppaca __attribute__((aligned(0x400)));
 #ifdef CONFIG_PPC_ISERIES
 	struct ItLpRegSave reg_save;
 #endif
_

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2004-12-09 14:50 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-12-09 14:34 [PATCH] ppc64: Correct alignment for lppaca in paca_struct Anton Blanchard
2004-12-09 14:46 ` Anton Blanchard

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®