Index: arch/ia64/include/context.h
===================================================================
--- arch/ia64/include/context.h	(revision 50fe6209a60488b15153a65e9d3d222eae0168f9)
+++ arch/ia64/include/context.h	(revision 296cc1b00a0b0d407da1b7afbe1dca5d4402d8b8)
@@ -37,5 +37,5 @@
 
 /*
- * context_save() and context_restore() are both leaf procedures.
+ * context_save_arch() and context_restore_arch() are both leaf procedures.
  * No need to allocate scratch area.
  *
@@ -48,10 +48,12 @@
 #endif
 
-/*RSE stack should begin under bottom of stack @ kernel*/
-#define context_set(c, _pc, stack, size) 								\
-	(c)->pc = (__address) _pc;									\
-	(c)->bsp = ((__address) stack) + ALIGN_UP((size), STACK_ALIGNMENT) ;	\
-	(c)->ar_pfs &= PFM_MASK; 									\
-	(c)->sp = ((__address) stack) + ALIGN_UP((size), STACK_ALIGNMENT) - SP_DELTA;
+/* RSE stack starts at the bottom of memory stack. */
+#define context_set(c, _pc, stack, size)								\
+	do {												\
+		(c)->pc = (__address) _pc;								\
+		(c)->bsp = ((__address) stack) + ALIGN_UP((size), REGISTER_STACK_ALIGNMENT);		\
+		(c)->ar_pfs &= PFM_MASK; 								\
+		(c)->sp = ((__address) stack) + ALIGN_UP((size), STACK_ALIGNMENT) - SP_DELTA;		\
+	} while (0);
 
 /*
@@ -123,5 +125,3 @@
 };
 
-
-
 #endif
