Use completion routines and IO_WORKITEMs to handle power state transitions,
allowing execution to run at PASSIVE_LEVEL without blocking the current thread,
and avoid blocking all power IRPs while another is executing (power IRPs should
be synchronized by the power manager, but this doesnt appear to be the case in
all situations).
Signed-off-by: Martin Harvey <martin.harvey@citrix.com>
Refactored, wrong format comments removed Signed-off-by: Owen Smith <owen.smith@cloud.com>
Further cosmetic fixes for style consistency. Signed-off-by: Paul Durrant <pdurrant@amazon.com>