linux-ide.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jeff Garzik <jgarzik@pobox.com>
To: Jens Axboe <axboe@suse.de>, torvalds@osdl.org
Cc: joshk@triplehelix.org, linux-kernel@vger.kernel.org,
	linux-ide@vger.kernel.org, linux-scsi@vger.kernel.org
Subject: Re: [PATCH] updated version of Jens' SATA suspend-to-ram patch
Date: Fri, 23 Sep 2005 16:47:27 -0400	[thread overview]
Message-ID: <433469DF.1060900@pobox.com> (raw)
In-Reply-To: <20050923180711.GH22655@suse.de>

Jens Axboe wrote:
> On Fri, Sep 23 2005, Joshua Kwan wrote:
>>I had some time yesterday and decided to help Jens out by rediffing the
>>now-infamous SATA suspend-to-ram patch [1] against current git and
>>test-building it.

Very strange.  I cannot find this patch at all in my email folders.

Can someone resend it to me?



> --- linux-2.6.13/drivers/scsi/libata-core.c~	2005-09-01 12:22:19.000000000 +0200
> +++ linux-2.6.13/drivers/scsi/libata-core.c	2005-09-01 12:24:38.000000000 +0200
> @@ -3738,8 +3738,8 @@
>  	unsigned long flags;
>  	int rc;
>  
> -	qc = ata_qc_new_init(ap, dev);
> -	BUG_ON(qc == NULL);
> +	while ((qc = ata_qc_new_init(ap, dev)) == NULL)
> +		msleep(10);
>  
>  	qc->tf.command = cmd;
>  	qc->tf.flags |= ATA_TFLAG_DEVICE;

Worried now!

If this patch is needed, something VERY VERY WRONG is going on.  This 
patch indicates that the queueing state machine has been violated, and 
something is trying to IGNORE the command synchronization :(

Further, you cannot always assume that msleep() is valid in that 
context.  It should be the caller that waits (libata suspend code), not 
ata_do_simple_cmd() itself.

Does anyone have a link to James Bottomley's proposed patch?  That one 
seemed to do what was necessary -- send a SYNCHRONIZE_CACHE command then 
turn it over to the LLD for further suspend.


Linus wrote:
> Ok. Can we have this in -mm for a few days just to shake out anything 
> interesting, and then merge it into mainline?

Once we get a decent patch, I can merge it into my libata-dev.git 
repository, which is automatically propagated to -mm.

	Jeff



  parent reply	other threads:[~2005-09-23 20:47 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-09-23 16:33 [PATCH] updated version of Jens' SATA suspend-to-ram patch Joshua Kwan
2005-09-23 18:07 ` Jens Axboe
2005-09-23 20:23   ` Linus Torvalds
2005-09-23 20:47   ` Jeff Garzik [this message]
2005-09-23 21:11     ` Mark Lord
2005-09-23 21:21     ` Joshua Kwan
2005-09-24  7:07     ` Jens Axboe
2005-09-29  5:21 ` SATA suspend/resume (was Re: [PATCH] updated version of Jens' SATA suspend-to-ram patch) Jeff Garzik
2005-09-29  7:34   ` Christoph Hellwig
2005-09-29  8:11     ` Christoph Hellwig
2005-09-29 20:13   ` Randy.Dunlap
2005-09-29 21:48     ` Randy.Dunlap
2005-10-01 18:24   ` Mark Lord
2005-10-01 18:39     ` Randy.Dunlap

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=433469DF.1060900@pobox.com \
    --to=jgarzik@pobox.com \
    --cc=axboe@suse.de \
    --cc=joshk@triplehelix.org \
    --cc=linux-ide@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-scsi@vger.kernel.org \
    --cc=torvalds@osdl.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).