--- /usr/src/temp/linux-2.4.21/drivers/ide/raid/pdcraid.c 2003-06-13 07:51:34.000000000 -0700 +++ pdcraid.c 2003-07-16 19:03:15.000000000 -0700 @@ -361,8 +361,14 @@ if (ideinfo->sect==0) return 0; - lba = (ideinfo->capacity / (ideinfo->head*ideinfo->sect)); - lba = lba * (ideinfo->head*ideinfo->sect); - lba = lba - ideinfo->sect; + + float lbatemp = 0; + float head = ideinfo->head; + float sect = ideinfo->sect; + float capacity = ideinfo->capacity; + lbatemp = (capacity / (head*sect)); + lbatemp = lbatemp * (head*sect); + lbatemp = lbatemp - sect; + lba = lbatemp; return lba; }