megaraid_sas: fix a bug for 64 bit arches
Subsystems (3)
PATCH 1/1 megaraid_sas: fix a bug for 64 bit arches
On 64 bit then -1UL and -1U are not equal, so these conditions don't work as intended and it breaks error handling.
Signed-off-by Dan Carpenter <[email protected]>
drivers/scsi/megaraid/megaraid_sas_fp.c +2 -2
@@ -585,7 +585,7 @@ u8 get_arm(struct megasas_instance *instance, u32 ld, u8 span, u64 stripe,case 1 :/* start with logical arm */ arm =get_arm_from_strip (instance, ld, stripe, map); -if (arm !=-1UL ) +if (arm !=-1U ) arm *=2 ;break ; }
@@ -637,7 +637,7 @@ static u8 mr_spanset_get_phy_params(struct megasas_instance *instance, u32 ld,if (raid->level =6 ) { logArm =get_arm_from_strip (instance, ld, stripRow, map); -if (logArm =-1UL ) +if (logArm =-1U )return FALSE; rowMod =mega_mod64 (row,SPAN_ROW_SIZE (map, ld, span)); armQ =SPAN_ROW_SIZE (map, ld, span) -1 - rowMod;
Quoted 37 lines
-----Original Message-----
From: Dan Carpenter [mailto:[email protected]]
Sent: Saturday, June 29, 2013 2:51 AM
To: DL-MegaRAID Linux; Saxena, Sumit
Cc: James E.J. Bottomley; [email protected]; kernel- [email protected]
Subject: [patch] [SCSI]megaraid_sas: fix a bug for 64 bit archesOn 64 bit then -1UL and -1U are not equal, so these conditions don't work as intended and it breaks error handling.
Signed-off-by Dan Carpenter <[email protected]>drivers/scsi/megaraid/megaraid_sas_fp.c +1
-1@@ -585,7 +585,7 @@ u8 get_arm(struct megasas_instance *instance, u32 ld, u8 span, u64 stripe, case 1:/* start with logical arm */ arm =get_arm_from_strip (instance, ld, stripe, map); -if (arm !=-1UL ) +if (arm !=-1U ) arm *=2 ;break ;}drivers/scsi/megaraid/megaraid_sas_fp.c +1
-1@@ -637,7 +637,7 @@ static u8 mr_spanset_get_phy_params(struct megasas_instance *instance, u32 ld, if (raid->level == 6) { logArm =get_arm_from_strip (instance, ld, stripRow, map); -if (logArm ==-1UL ) +if (logArm ==-1U )return FALSE; rowMod =mega_mod64 (row,SPAN_ROW_SIZE (map, ld, span));
Quoted 1 line
armQ = SPAN_ROW_SIZE(map, ld, span) - 1 - rowMod;
Acked-by Sumit Saxena <[email protected]>
Sumit