Windows – DRIVER_POWER_STATE_FAILURE BSoDs on Windows 10 laptop, upgraded from 8.1

bsodwindows 10

First for the record, this problem started before I upgraded to Win10. I made a post here on r/techsupport subreddit to no avail though I guess I may have put a bit more than was needed and maybe lacking some more technical info which I will now be able to provide here. So perhaps for the most part it will be ok to not read the reddit link.

This crash has been happening relatively infrequently compared to other observed cases perhaps, although probably about once a day minimum, no more than twice a day iirc. I have not been hibernating my laptop and sometimes it happens when I am AFK, other times when I am doing something. Upon trying to help myself more today I managed to install WinDbg so here I have some info produced by it.
I will give a lot of info below but this a link to the most recent dump here on my Google Drive.

Simple bugcheck, and !thread output

BugCheck 9F, {3, ffffe000c24bb6e0, ffffd00150c6a990, ffffe000c13f9b80}

Implicit thread is now ffffe000`bc6ac040
Probably caused by : pci.sys

Followup:     MachineOwner
---------

2: kd> !thread
GetPointerFromAddress: unable to read from fffff80329e03200
THREAD ffffd00150c4ccc0  Cid 0000.0000  Teb: 0000000000000000 Win32Thread: 0000000000000000 RUNNING on processor 2
Not impersonating
GetUlongFromAddress: unable to read from fffff80329d52ef8
Owning Process            fffff80329e16a40       Image:         <Unknown>
Attached Process          ffffe000bc694040       Image:         System
fffff78000000000: Unable to get shared data
Wait Start TickCount      883950       
Context Switch Count      11985446       IdealProcessor: 2             
ReadMemory error: Cannot get nt!KeMaximumIncrement value.
UserTime                  00:00:00.000
KernelTime                00:00:00.000
Win32 Start Address nt!KiIdleLoop (0xfffff80329bc91b0)
Stack Init ffffd00150c6ac90 Current ffffd00150c6ac20
Base ffffd00150c6b000 Limit ffffd00150c65000 Call 0
Priority 0 BasePriority 0 UnusualBoost 0 ForegroundBoost 0 IoPriority 0 PagePriority 0
Child-SP          RetAddr           : Args to Child                                                           : Call Site
ffffd001`50c6a958 fffff803`29c64eca : 00000000`0000009f 00000000`00000003 ffffe000`c24bb6e0 ffffd001`50c6a990 : nt!KeBugCheckEx
ffffd001`50c6a960 fffff803`29c64dea : ffffe000`c22bcf08 00000000`00000000 00000000`00000000 fffff803`29b4dd96 : nt!PopIrpWatchdogBugcheck+0xde
ffffd001`50c6a9c0 fffff803`29af1fe6 : ffffe000`c22bcf40 ffffd001`50c6ab10 00000000`00000001 00000000`00080a1b : nt!PopIrpWatchdog+0x32
ffffd001`50c6aa10 fffff803`29bc920a : ffffffff`00000000 ffffd001`50c40180 ffffd001`50c4ccc0 ffffe000`be05b080 : nt!KiRetireDpcList+0x5f6
ffffd001`50c6ac60 00000000`00000000 : ffffd001`50c6b000 ffffd001`50c65000 00000000`00000000 00000000`00000000 : nt!KiIdleLoop+0x5a

I ran the dps command in WinDbg then and I have the full output here, though it seems to contain a lot of useless lines in the format of <address hexstring> ???????? . I did find that amidst all that junk there was this error:

Unable to load image \SystemRoot\System32\drivers\Netwbw02.sys, Win32 error 0n2
*** WARNING: Unable to verify timestamp for Netwbw02.sys
*** ERROR: Module load completed but symbols could not be loaded for Netwbw02.sys
 Netwbw02+0x24c409

After this I ran !analyze -v and here is the output:

DRIVER_POWER_STATE_FAILURE (9f)
A driver has failed to complete a power IRP within a specific time.
Arguments:
Arg1: 0000000000000003, A device object has been blocking an Irp for too long a time
Arg2: ffffe000c24bb6e0, Physical Device Object of the stack
Arg3: ffffd00150c6a990, nt!TRIAGE_9F_POWER on Win7 and higher, otherwise the Functional Device Object of the stack
Arg4: ffffe000c13f9b80, The blocked IRP

Debugging Details:
------------------

Implicit thread is now ffffe000`bc6ac040

DUMP_CLASS: 1

DUMP_QUALIFIER: 400

BUILD_VERSION_STRING:  10586.122.amd64fre.th2_release_inmarket.160222-1549

SYSTEM_MANUFACTURER:  Alienware

SYSTEM_PRODUCT_NAME:  Alienware 14

SYSTEM_SKU:  Alienware 14

SYSTEM_VERSION:  A09

BIOS_VENDOR:  Alienware

BIOS_VERSION:  A09

BIOS_DATE:  04/23/2014

BASEBOARD_MANUFACTURER:  Alienware

BASEBOARD_PRODUCT:  07MJ2Y

BASEBOARD_VERSION:  A01

DUMP_TYPE:  2

BUGCHECK_P1: 3

BUGCHECK_P2: ffffe000c24bb6e0

BUGCHECK_P3: ffffd00150c6a990

BUGCHECK_P4: ffffe000c13f9b80

DRVPOWERSTATE_SUBCODE:  3

IMAGE_NAME:  pci.sys

DEBUG_FLR_IMAGE_TIMESTAMP:  5632d60a

MODULE_NAME: pci

FAULTING_MODULE: fffff80116430000 pci

CPU_COUNT: 8

CPU_MHZ: 9be

CPU_VENDOR:  GenuineIntel

CPU_FAMILY: 6

CPU_MODEL: 3c

CPU_STEPPING: 3

CPU_MICROCODE: 6,3c,3,0 (F,M,S,R)  SIG: 1E'00000000 (cache) 1E'00000000 (init)

CUSTOMER_CRASH_COUNT:  1

DEFAULT_BUCKET_ID:  WIN8_DRIVER_FAULT

BUGCHECK_STR:  0x9F

PROCESS_NAME:  System

CURRENT_IRQL:  2

ANALYSIS_SESSION_HOST:  ICY-ALIEN

ANALYSIS_SESSION_TIME:  03-09-2016 15:24:13.0303

ANALYSIS_VERSION: 10.0.10586.567 amd64fre

IP_IN_FREE_BLOCK: 0

STACK_TEXT:  
ffffd001`50c6a958 fffff803`29c64eca : 00000000`0000009f 00000000`00000003 ffffe000`c24bb6e0 ffffd001`50c6a990 : nt!KeBugCheckEx
ffffd001`50c6a960 fffff803`29c64dea : ffffe000`c22bcf08 00000000`00000000 00000000`00000000 fffff803`29b4dd96 : nt!PopIrpWatchdogBugcheck+0xde
ffffd001`50c6a9c0 fffff803`29af1fe6 : ffffe000`c22bcf40 ffffd001`50c6ab10 00000000`00000001 00000000`00080a1b : nt!PopIrpWatchdog+0x32
ffffd001`50c6aa10 fffff803`29bc920a : ffffffff`00000000 ffffd001`50c40180 ffffd001`50c4ccc0 ffffe000`be05b080 : nt!KiRetireDpcList+0x5f6
ffffd001`50c6ac60 00000000`00000000 : ffffd001`50c6b000 ffffd001`50c65000 00000000`00000000 00000000`00000000 : nt!KiIdleLoop+0x5a


STACK_COMMAND:  kb

THREAD_SHA1_HASH_MOD_FUNC:  81a7ba75a791115b4f55c8910c64a260d525502e

THREAD_SHA1_HASH_MOD_FUNC_OFFSET:  936d5c51c0ad2157bf4c85af575dd55cea2c0947

THREAD_SHA1_HASH_MOD:  f08ac56120cad14894587db086f77ce277bfae84

FOLLOWUP_NAME:  MachineOwner

IMAGE_VERSION:  10.0.10586.0

FAILURE_BUCKET_ID:  0x9F_3_nvlddmkm_IMAGE_pci.sys

BUCKET_ID:  0x9F_3_nvlddmkm_IMAGE_pci.sys

PRIMARY_PROBLEM_CLASS:  0x9F_3_nvlddmkm_IMAGE_pci.sys

TARGET_TIME:  2016-03-08T16:58:21.000Z

OSBUILD:  10586

OSSERVICEPACK:  0

SERVICEPACK_NUMBER: 0

OS_REVISION: 0

SUITE_MASK:  784

PRODUCT_TYPE:  1

OSPLATFORM_TYPE:  x64

OSNAME:  Windows 10

OSEDITION:  Windows 10 WinNt TerminalServer SingleUserTS Personal

OS_LOCALE:  

USER_LCID:  0

OSBUILD_TIMESTAMP:  2016-02-23 07:16:30

BUILDDATESTAMP_STR:  160222-1549

BUILDLAB_STR:  th2_release_inmarket

BUILDOSVER_STR:  10.0.10586.122.amd64fre.th2_release_inmarket.160222-1549

ANALYSIS_SESSION_ELAPSED_TIME: 8da

ANALYSIS_SOURCE:  KM

FAILURE_ID_HASH_STRING:  km:0x9f_3_nvlddmkm_image_pci.sys

FAILURE_ID_HASH:  {a47222af-fbac-bc49-47e0-2cf5d31cc673}

Followup:     MachineOwner
---------

Then I executed !irp with the Arg4 address:

2: kd> !irp ffffe000c13f9b80
Irp is active with 6 stacks 5 is current (= 0xffffe000c13f9d70)
 No Mdl: No System Buffer: Thread 00000000:  Irp stack trace.  
     cmd  flg cl Device   File     Completion-Context
 [N/A(0), N/A(0)]
            0  0 00000000 00000000 00000000-00000000    

            Args: 00000000 00000000 00000000 00000000
 [N/A(0), N/A(0)]
            0  0 00000000 00000000 00000000-00000000    

            Args: 00000000 00000000 00000000 00000000
 [N/A(0), N/A(0)]
            0  0 00000000 00000000 00000000-00000000    

            Args: 00000000 00000000 00000000 00000000
 [N/A(0), N/A(0)]
            0  0 00000000 00000000 00000000-00000000    

            Args: 00000000 00000000 00000000 00000000
>[IRP_MJ_POWER(16), IRP_MN_SET_POWER(2)]
            0 e1 ffffe000c24fa040 00000000 fffff80329b93da8-ffffe000c22bcf08 Success Error Cancel pending
          Unable to load image \SystemRoot\system32\DRIVERS\nvlddmkm.sys, Win32 error 0n2
*** WARNING: Unable to verify timestamp for nvlddmkm.sys
*** ERROR: Module load completed but symbols could not be loaded for nvlddmkm.sys
 \Driver\nvlddmkm   nt!PopRequestCompletion
            Args: 00000000 00000001 00000004 00000000
 [N/A(0), N/A(0)]
            0  0 00000000 00000000 00000000-ffffe000c22bcf08    

            Args: 00000000 00000000 00000000 00000000

I also ran lmvm for the drivers mentioned in errors; nvlddmkm and netwbw02and this is what I got:

2: kd> lmvm Netwbw02
Browse full module list
start             end                 module name
fffff801`19880000 fffff801`19c09000   Netwbw02 T (no symbols)           
    Loaded symbol image file: Netwbw02.sys
    Image path: \SystemRoot\System32\drivers\Netwbw02.sys
    Image name: Netwbw02.sys
    Browse all global symbols  functions  data
    Timestamp:        Tue Nov 03 14:30:10 2015 (5638C4F2)
    CheckSum:         00364A95
    ImageSize:        00389000
    Translations:     0000.04b0 0000.04e4 0409.04b0 0409.04e4

2: kd> lmvm nvlddmkm
Browse full module list
start             end                 module name
fffff801`1df30000 fffff801`1eb55000   nvlddmkm T (no symbols)           
    Loaded symbol image file: nvlddmkm.sys
    Image path: \SystemRoot\system32\DRIVERS\nvlddmkm.sys
    Image name: nvlddmkm.sys
    Browse all global symbols  functions  data
    Timestamp:        Tue Feb 09 04:28:39 2016 (56B96AF7)
    CheckSum:         00BF2DF6
    ImageSize:        00C25000
    Translations:     0000.04b0 0000.04e4 0409.04b0 0409.04e4

The second driver date certainly seems alright, but I couldn't figure out where to check for an update for Netwbw02..