From: Hugh Dickins <hugh@veritas.com>

Extend the warning comment in kmap_types.h: if you add an odd number of new
kmaps, KM_VSTACK0 becomes misaligned on odd numbered cpus.  I've not added
a corresponding BUG_ON to entry_trampoline.c, having an aversion to errors
which trigger too early to be seen.  We should do better, perhaps #error,
or robustifying the layout; but for now just comment.



 include/asm-i386/kmap_types.h |    8 ++++++--
 1 files changed, 6 insertions(+), 2 deletions(-)

diff -puN include/asm-i386/kmap_types.h~4g4g-kmap-warning-comments include/asm-i386/kmap_types.h
--- 25/include/asm-i386/kmap_types.h~4g4g-kmap-warning-comments	2003-08-30 15:42:12.000000000 -0700
+++ 25-akpm/include/asm-i386/kmap_types.h	2003-08-30 15:42:12.000000000 -0700
@@ -5,8 +5,8 @@
 
 enum km_type {
 	/*
-	 * IMPORTANT: dont move these 3 entries, the virtual stack
-	 * must be 8K aligned.
+	 * IMPORTANT: don't move these 3 entries, and only add entries in
+	 * pairs: the 4G/4G virtual stack must be 8K aligned on each cpu.
 	 */
 	KM_BOUNCE_READ,
 	KM_VSTACK1,
@@ -29,6 +29,10 @@ enum km_type {
 	KM_IRQ1,
 	KM_SOFTIRQ0,
 	KM_SOFTIRQ1,
+	/*
+	 * Add new entries in pairs:
+	 * the 4G/4G virtual stack must be 8K aligned on each cpu.
+	 */
 	KM_TYPE_NR
 };
 #endif

_