x86, UV - uv_global_gru_mmr_address() macro fix
Subsystems (2)
PATCH 1/1 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 <[email protected]>
Cc <[email protected]>
--- arch/x86/include/asm/uv/uv_hub.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
arch/x86/include/asm/uv/uv_hub.h +2 -1
@@ -329,7 +329,8 @@ static inline unsigned long uv_read_glob*/ 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); }static inline void uv_write_global_mmr8 (int pnode,unsigned long offset,unsigned char val)
[tip:x86/uv] x86, uv: uv_global_gru_mmr_address() macro fix
Commit-ID: e1e0138d7d10fd447c71cc70f367eac514bd3ce4 Gitweb: http://git.kernel.org/tip/e1e0138d7d10fd447c71cc70f367eac514bd3ce4 Author: Jack Steiner <[email protected]> AuthorDate: Thu, 7 Jan 2010 10:12:40 -0600 Committer: H. Peter Anvin <[email protected]> CommitDate: Thu, 7 Jan 2010 11:49:57 -0800
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 <[email protected]>
LKML-Reference: <[email protected]>
Cc <[email protected]>
Signed-off-by H. Peter Anvin <[email protected]>
--- arch/x86/include/asm/uv/uv_hub.h | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-)
arch/x86/include/asm/uv/uv_hub.h +2 -1
@@ -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) { -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); }/*