From: Bartlomiej Zolnierkiewicz Date: Tue, 5 Aug 2008 16:16:56 +0000 (+0200) Subject: ide: fix ide_fix_driveid() X-Git-Tag: v2.6.27-rc2~37^2~10 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=242f44261e6c5fdc13e3cd12f949ab717dc37d58;p=platform%2Fupstream%2Fkernel-adaptation-pc.git ide: fix ide_fix_driveid() Fix byte-swapping for id->words161_175[], id->words206_254[] and id->words206_254[]. Luckily all words previously left in little-endian byte-order are marked as reserved so this fix shouldn't affect user-space applications. Signed-off-by: Bartlomiej Zolnierkiewicz --- diff --git a/drivers/ide/ide-iops.c b/drivers/ide/ide-iops.c index 8aae917..2cbadff 100644 --- a/drivers/ide/ide-iops.c +++ b/drivers/ide/ide-iops.c @@ -484,11 +484,11 @@ void ide_fix_driveid (struct hd_driveid *id) for (i = 0; i < 3; i++) id->words157_159[i] = __le16_to_cpu(id->words157_159[i]); id->cfa_power = __le16_to_cpu(id->cfa_power); - for (i = 0; i < 14; i++) + for (i = 0; i < 15; i++) id->words161_175[i] = __le16_to_cpu(id->words161_175[i]); - for (i = 0; i < 31; i++) + for (i = 0; i < 30; i++) id->words176_205[i] = __le16_to_cpu(id->words176_205[i]); - for (i = 0; i < 48; i++) + for (i = 0; i < 49; i++) id->words206_254[i] = __le16_to_cpu(id->words206_254[i]); id->integrity_word = __le16_to_cpu(id->integrity_word); # else