Re: ST340823A disk size issue

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wednesday 01 August 2007, Mikko Rapeli wrote:
> On Wed, Aug 01, 2007 at 10:34:03PM +0200, Bartlomiej Zolnierkiewicz wrote:
> > Could you try attached patch?
> > 
> > [PATCH] ide-disk: workaround for buggy HPA support on ST340823A
> 
> Umh, it's getting late but some makefile magic maybe missing, or I
> should do a clean build?

[...]

> ERROR: "ide_in_drive_list" [drivers/ide/ide-disk.ko] undefined!
> make[1]: *** [__modpost] Error 1
> make: *** [drivers/ide/ide-disk.ko] Error 2

There is "EXPORT_SYMBOL(ide_in_drive_list);" missing from ide-dma.c.

I overlooked it since here ide-disk is built-in, sorry for that.

> Based on Alan's comments I'm already running 2.6.22.1 with this:

Ah, I see it now.

> diff -ru linux-2.6.22.1/drivers/ide/ide-disk.c linux-2.6.22.1.new/drivers/ide/ide-disk.c
> --- linux-2.6.22.1/drivers/ide/ide-disk.c	2007-07-10 21:56:30.000000000 +0300
> +++ linux-2.6.22.1.new/drivers/ide/ide-disk.c	2007-08-01 22:59:47.000000000 +0300
> @@ -502,6 +502,17 @@
>  			 capacity, sectors_to_MB(capacity),
>  			 set_max, sectors_to_MB(set_max));
>  
> +	if ((set_max % 2) && (set_max == capacity + 1)) {
> +		printk(KERN_INFO "Old drive detected, keeping current capacity.\n");

Please either remove this printk() or change it to:

"Buggy HPA implementation, keeping current capacity."

The disk is not odd sized since the command to read the last sectors fail
with "SectorIdNotFound". This is a buggy HPA implementation as explained in
the description of my patch.

BTW libata wouldn't help since HPA code is almost a direct copy of the code
from ide-disk (I did the comparision before writing my patch)

> +		return;
> +	}
> +
>  	if (lba48)
>  		set_max = idedisk_set_max_address_ext(drive, set_max);
>  	else

Otherwise this patch looks fine and is a bit simpler than my patch.

If you fix the printk, add patch description (can use the one from my patch)
and add "Signed-off-by:" I would happily apply it and dump mine version.

Thanks,
Bart
-
To unsubscribe from this list: send the line "unsubscribe linux-ide" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Filesystems]     [Linux SCSI]     [Linux RAID]     [Git]     [Kernel Newbies]     [Linux Newbie]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Samba]     [Device Mapper]

  Powered by Linux