Subject: Re: [PATCH] net/wireless: enable wiphy device to suspend/resume asynchronously

From: Johannes Berg <[email-masked]>
Date: Mon, 17 Aug 2015 09:29:13 +0200

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?

johannes