Re: PATCH: 2.6.10 - Still mishandles volumes without geometry data
From: Alan Cox
Date: Tue Dec 28 2004 - 18:13:47 EST
Ok how about this revision which also silences the boot time CHS data as
Bartlomiej suggested.
--- linux.vanilla-2.6.10/drivers/ide/ide-disk.c 2004-12-25 21:15:34.000000000 +0000
+++ linux-2.6.10/drivers/ide/ide-disk.c 2004-12-28 23:07:13.195925352 +0000
@@ -84,6 +84,10 @@
{
unsigned long lba_sects, chs_sects, head, tail;
+ /* No non-LBA info .. so valid! */
+ if (id->cyls == 0)
+ return 1;
+
/*
* The ATA spec tells large drives to return
* C/H/S = 16383/16/63 independent of their size.
@@ -201,7 +205,8 @@
head = track % drive->head;
cyl = track / drive->head;
- pr_debug("%s: CHS=%u/%u/%u\n", drive->name, cyl, head, sect);
+ if(cyl)
+ pr_debug("%s: CHS=%u/%u/%u\n", drive->name, cyl, head, sect);
hwif->OUTB(0x00, IDE_FEATURE_REG);
hwif->OUTB(nsectors.b.low, IDE_NSECTOR_REG);
@@ -1239,8 +1257,9 @@
if (id->buf_size)
printk (" w/%dKiB Cache", id->buf_size/2);
- printk(", CHS=%d/%d/%d",
- drive->bios_cyl, drive->bios_head, drive->bios_sect);
+ if(drive->bios_cyl)
+ printk(", CHS=%d/%d/%d",
+ drive->bios_cyl, drive->bios_head, drive->bios_sect);
if (drive->using_dma)
ide_dma_verbose(drive);
printk("\n");
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/