Re: [patch ide-dev 6/9] check capacity in ide_task_init_flush()

From: Chuck Ebbert
Date: Fri Mar 04 2005 - 04:05:17 EST


On Thu, 24 Feb 2005 at 15:44:34, Bartlomiej Zolnierkiewicz wrote:

> --- a/drivers/ide/ide-io.c 2005-02-23 20:58:16 +01:00
> +++ b/drivers/ide/ide-io.c 2005-02-23 20:58:16 +01:00
> @@ -61,7 +61,8 @@
>
> memset(task, 0, sizeof(*task));
>
> - if (ide_id_has_flush_cache_ext(drive->id)) {
> + if (ide_id_has_flush_cache_ext(drive->id) &&
> + (drive->capacity64 >= (1UL << 28))) {
^^
------------------------------>||

> tf->command = WIN_FLUSH_CACHE_EXT;
> tf->flags |= ATA_TFLAG_LBA48;
> } else

Shouldn't that be ">" ???

Either that or this code from ide-disk is wrong:

/* limit drive capacity to 137GB if LBA48 cannot be used */
if (drive->addressing == 0 && drive->capacity64 > 1ULL << 28) {
printk(KERN_WARNING "%s: cannot use LBA48 - full capacity "
"%llu sectors (%llu MB)\n",
drive->name, (unsigned long long)drive->capacity64,
sectors_to_MB(drive->capacity64));
drive->capacity64 = 1ULL << 28;
}


--
Chuck
-
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/