lkml.org 
[lkml]   [2006]   [Jun]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 07/11] the latest consensus libata resume fix
On Fri, Jun 02 2006, Chris Wright wrote:
> -stable review patch. If anyone has any objections, please let us know.
> ------------------
>
> From: Mark Lord <liml@rtr.ca>
>
> Okay, just to sum things up.
>
> This forces libata to wait for up to 2 seconds for BUSY|DRQ to clear
> on resume before continuing.
>
> [jgarzik adds...] During testing we never saw DRQ asserted, but
> nonetheless (a) this works and (b) testing for DRQ won't hurt.
>
> Signed-off-by: Mark Lord <liml@rtr.ca>
> Acked-by: Jens Axboe <axboe@suse.de>
> Signed-off-by: Jeff Garzik <jeff@garzik.org>
> Signed-off-by: Chris Wright <chrisw@sous-sol.org>
> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
> ---
>
> drivers/scsi/libata-core.c | 1 +
> 1 file changed, 1 insertion(+)
>
> --- linux-2.6.16.19.orig/drivers/scsi/libata-core.c
> +++ linux-2.6.16.19/drivers/scsi/libata-core.c
> @@ -4293,6 +4293,7 @@ static int ata_start_drive(struct ata_po
> int ata_device_resume(struct ata_port *ap, struct ata_device *dev)
> {
> if (ap->flags & ATA_FLAG_SUSPENDED) {
> + ata_busy_wait(ap, ATA_BUSY | ATA_DRQ, 200000);
> ap->flags &= ~ATA_FLAG_SUSPENDED;
> ata_set_mode(ap);
> }

I'm not against the patch as such, but last I checked 2.6.16 actually
worked ok. The timer fixes in 2.6.17-rc is what apparently got the
resume breaking.

So unless there's a bug report on 2.6.16.x for this, then it's a little
against the -stable rules to add it.

--
Jens Axboe

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2006-06-02 21:53    [W:0.093 / U:0.220 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site