Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1211757 > unrolled thread
| Started by | "Fu, Zhonghui" <zhonghui.fu@linux.intel.com> |
|---|---|
| First post | 2015-08-24 05:50 +0200 |
| Last post | 2015-08-24 09:40 +0200 |
| Articles | 2 — 2 participants |
Back to article view | Back to linux.kernel
This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by
below is the oldest one visible, not the original post.
Re: [PATCH] net/wireless: enable wiphy device to suspend/resume asynchronously "Fu, Zhonghui" <zhonghui.fu@linux.intel.com> - 2015-08-24 05:50 +0200
Re: [PATCH] net/wireless: enable wiphy device to suspend/resume asynchronously Johannes Berg <johannes@sipsolutions.net> - 2015-08-24 09:40 +0200
| From | "Fu, Zhonghui" <zhonghui.fu@linux.intel.com> |
|---|---|
| Date | 2015-08-24 05:50 +0200 |
| Subject | Re: [PATCH] net/wireless: enable wiphy device to suspend/resume asynchronously |
| Message-ID | <q0QVI-4kp-7@gated-at.bofh.it> |
On 2015/8/17 16:46, Arend van Spriel wrote: > + Rafael > > On 08/17/2015 09:29 AM, Johannes Berg wrote: >> On Mon, 2015-08-17 at 09:48 +0800, Fu, Zhonghui wrote: >>> >>> The suspend/resume timing of wiphy device and related devices will be >>> ensured by their parent/child relationship. So, enabling wiphy device >>> to suspend/resume asynchronously does not change any dependency. It >>> can only take advantage of multicore and improve system >>> suspend/resume speed. >>> >> >> You're going to have to explain that to me, because I don't see that. >> All I see is that when looking at a device, if async is possible, it >> gets added to an async work, and if async is not possible then it gets >> done immediately. Even putting aside the question of whether or not >> async is ordered or not (I don't know), if the wiphy is async and the >> PCI (or other bus) device isn't, then it seems they could get handled >> out of order, no? Or is there some magic code somewhere that I'm >> missing that explicitly waits for the async of the parent/child >> relationship? > > This patch got me worried as well. Can't find the magic either. Maybe Rafael can give some hints here. "dpm_wait_for_children" function will be invoked in "__device_suspend", "__device_suspend_late", and "__device_suspend_noirq" functions to synchronize the child relationship. "dpm_wait" function will be invoked in "device_resume_noirq", "device_resume_early", and "device_resume" functions to synchronize the parent relationship. If two devices have parent/child relationship, but different suspend/resume mode(sync or async), this will have no impact to PM timing order between them. Because all devices will use "__device_suspend", "__device_suspend_late" ... functions to complete their PM transition. Thanks, Zhonghui > > Regards, > Arend > >> johannes >> -- >> To unsubscribe from this list: send the line "unsubscribe linux-wireless" in >> the body of a message to majordomo@vger.kernel.org >> More majordomo info at http://vger.kernel.org/majordomo-info.html >> > > -- > To unsubscribe from this list: send the line "unsubscribe linux-wireless" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html -- 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/
[toc] | [next] | [standalone]
| From | Johannes Berg <johannes@sipsolutions.net> |
|---|---|
| Date | 2015-08-24 09:40 +0200 |
| Subject | Re: [PATCH] net/wireless: enable wiphy device to suspend/resume asynchronously |
| Message-ID | <q0Uwi-149-21@gated-at.bofh.it> |
| In reply to | #1211757 |
On Mon, 2015-08-24 at 11:45 +0800, Fu, Zhonghui wrote: > > On 2015/8/17 16:46, Arend van Spriel wrote: > > + Rafael > > > > On 08/17/2015 09:29 AM, Johannes Berg wrote: > > > On Mon, 2015-08-17 at 09:48 +0800, Fu, Zhonghui wrote: > > > > > > > > The suspend/resume timing of wiphy device and related devices > > > > will be > > > > ensured by their parent/child relationship. So, enabling wiphy > > > > device > > > > to suspend/resume asynchronously does not change any > > > > dependency. It > > > > can only take advantage of multicore and improve system > > > > suspend/resume speed. > > > > > > > > > > You're going to have to explain that to me, because I don't see > > > that. > > > All I see is that when looking at a device, if async is possible, > > > it > > > gets added to an async work, and if async is not possible then it > > > gets > > > done immediately. Even putting aside the question of whether or > > > not > > > async is ordered or not (I don't know), if the wiphy is async and > > > the > > > PCI (or other bus) device isn't, then it seems they could get > > > handled > > > out of order, no? Or is there some magic code somewhere that I'm > > > missing that explicitly waits for the async of the parent/child > > > relationship? > > > > This patch got me worried as well. Can't find the magic either. > > Maybe Rafael can give some hints here. > > "dpm_wait_for_children" function will be invoked in > "__device_suspend", "__device_suspend_late", and > "__device_suspend_noirq" functions to synchronize the child > relationship. "dpm_wait" function will be invoked in > "device_resume_noirq", "device_resume_early", and "device_resume" > functions to synchronize the parent relationship. If two devices have > parent/child relationship, but different suspend/resume mode(sync or > async), this will have no impact to PM timing order between them. > Because all devices will use "__device_suspend", > "__device_suspend_late" ... functions to complete their PM > transition. > Ok, good point. For the unaware here, can you please resend with a commit message amended with some of this information? thanks, johannes -- 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/
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web