Yup got it. On further reading through the code found that the check does happen at some point but could have been optimized by checking if the parent supports runtime PM initially. Regards, Nithish Mahalingam -----Original Message----- From: Alan Stern [mailto:stern@xxxxxxxxxxxxxxxxxxx] Sent: Wednesday, December 02, 2009 8:50 PM To: Mahalingam, Nithish Cc: Rafael J. Wysocki; linux-pm@xxxxxxxxxxxxxxxxxxxxxxxxxx Subject: Re: Runtime PM: Check for dev->parent PM support On Wed, 2 Dec 2009, Mahalingam, Nithish wrote: > Hi Rafael, > > I see that in most of the internal runtime functions > (__pm_runtime_suspend, __pm_runtime_resume, __pm_runtime_set_status > etc.) without any explicit check to see if the dev->parent supports > runtime PM there is access to its runtime PM fields. I guess there > can be a use case where a device supports runtime PM but its parent > does not. Am I missing something here? That's right. For example, in theory there could be a situation where the PCI subsystem didn't include runtime PM support but the SCSI subsystem did. Then you could have a SCSI target device (with support) whose parent was a PCI SCSI host adapter (without support). (Actually that example couldn't happen, because PCI is one of the first subsystems to support runtime PM. But you get the idea.) Alan Stern _______________________________________________ linux-pm mailing list linux-pm@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/linux-pm