- printk ("%s: detected %'"PRDSNu" sector (%d MB) disk: ",
- d->name, d->capacity, d->capacity * DISK_SECTOR_SIZE / 1024 / 1024);
+
+ /* Print identification message. */
+ printk ("%s: detected %'"PRDSNu" sector (", d->name, d->capacity);
+ if (d->capacity > 1024 / DISK_SECTOR_SIZE * 1024 * 1024)
+ printk ("%"PRDSNu" GB",
+ d->capacity / (1024 / DISK_SECTOR_SIZE * 1024 * 1024));
+ else if (d->capacity > 1024 / DISK_SECTOR_SIZE * 1024)
+ printk ("%"PRDSNu" MB", d->capacity / (1024 / DISK_SECTOR_SIZE * 1024));
+ else if (d->capacity > 1024 / DISK_SECTOR_SIZE)
+ printk ("%"PRDSNu" kB", d->capacity / (1024 / DISK_SECTOR_SIZE));
+ else
+ printk ("%"PRDSNu" byte", d->capacity * DISK_SECTOR_SIZE);
+ printk (") disk \"");