On Tue, 2012-05-15 at 10:37 -0400, Alan Stern wrote: > On Tue, 15 May 2012, Lin Ming wrote: > > > Add ->runtime_pm callback and ->pm_status to request queue. > > As an example, implement a simple queue runtime_pm callback > > in sd driver. > > > +static int sd_runtime_pm_fn(struct request_queue *q, pm_message_t mesg) > > +{ > > + struct scsi_device *sdp = q->queuedata; > > + > > + if (mesg.event == PM_EVENT_SUSPEND) { > > + q->pm_status = RPM_SUSPENDING; > > + pm_runtime_put(&sdp->sdev_gendev); > > + } > > + else if (mesg.event == PM_EVENT_RESUME) { > > + q->pm_status = RPM_RESUMING; > > + pm_runtime_get(&sdp->sdev_gendev); > > + } > > Don't use pm_message_t arguments for runtime PM. Implement separate > routines for suspend and resume. OK, I'll add 2 callbacks to request_queue. runtime_pm_fn runtime_suspend; runtime_pm_fn runtime_resume; > > Alan Stern > -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html