x86, uv: uv_global_gru_mmr_address() macro fix

Fix bug in uv_global_gru_mmr_address macro.  Macro failed
to cast an int value to a long prior to a left shift > 32.

Signed-off-by: Jack Steiner <steiner@sgi.com>
LKML-Reference: <20100107161240.GA2610@sgi.com>
Cc: <stable@kernel.org>
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
This commit is contained in:
Jack Steiner 2010-01-07 10:12:40 -06:00 committed by H. Peter Anvin
parent b76365a18f
commit e1e0138d7d

View File

@ -335,7 +335,8 @@ static inline unsigned long uv_read_global_mmr64(int pnode,
*/ */
static inline unsigned long uv_global_gru_mmr_address(int pnode, unsigned long offset) static inline unsigned long uv_global_gru_mmr_address(int pnode, unsigned long offset)
{ {
return UV_GLOBAL_GRU_MMR_BASE | offset | (pnode << uv_hub_info->m_val); return UV_GLOBAL_GRU_MMR_BASE | offset |
((unsigned long)pnode << uv_hub_info->m_val);
} }
/* /*