Staging: rts_pstor: off by one in for loop

I already fixed the other similar for loop in this file.  I'm not sure
how I missed this one.  We use seg_no+1 inside the loop so we can't go
right up to the end of the loop.

Also if we don't break out of the loop then we end up past the end of
the array, but with this fix we end up on the last element.

Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Dan Carpenter 2012-03-29 21:52:57 +03:00 коммит произвёл Greg Kroah-Hartman
Родитель 678b7c1707
Коммит 3fd654c22c
1 изменённых файлов: 2 добавлений и 1 удалений

Просмотреть файл

@ -3498,7 +3498,8 @@ static int ms_rw_multi_sector(struct scsi_cmnd *srb, struct rtsx_chip *chip, u32
log_blk++;
for (seg_no = 0; seg_no < sizeof(ms_start_idx)/2; seg_no++) {
for (seg_no = 0; seg_no < ARRAY_SIZE(ms_start_idx) - 1;
seg_no++) {
if (log_blk < ms_start_idx[seg_no+1])
break;
}