Re: [RFC] ata port runtime pm

From: Jeff Garzik
Date: Thu Oct 27 2011 - 23:38:03 EST


On 10/27/2011 11:21 PM, Lin Ming wrote:
@@ -3208,6 +3209,11 @@ int ata_scsi_queuecmd(struct Scsi_Host *shost, struct scsi_cmnd *cmd)

ap = ata_shost_to_port(shost);

+ if (pm_runtime_suspended(&ap->tdev))
+ pm_runtime_resume(&ap->tdev);
+ pm_runtime_mark_last_busy(&ap->tdev);
+ pm_request_autosuspend(&ap->tdev);
+
spin_lock_irqsave(ap->lock, irq_flags);



Putting this into the core command dispatch fast-path is rather disappointing. That's at least one additional lock, plus some atomic instructions and tests.

Jeff


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